You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
1.0 KiB

/*
* Copyright 2002-2019 Intel Corporation.
*
* This software is provided to you as Sample Source Code as defined in the accompanying
* End User License Agreement for the Intel(R) Software Development Products ("Agreement")
* section 1.L.
*
* This software and the related documents are provided as is, with no express or implied
* warranties, other than those that are expressly stated in the License.
*/
/*! @file
* The function executes XLAT on mapped memory, both with and without address size prefix.
* The memory is expected to be in the lower 2 GB of the process address space.
*/
.global test_xlat
.type test_xlat, @function
test_xlat:
push %rbp
mov %rsp, %rbp
mov %rdi, %rbx # the input buffer is in rdi
push %rax
mov $2, %rax # rax gets a small value that fits into AL
xlat # XLAT without prefix
mov $2, %rax
addr32 xlat # XLAT with 0x67 prefix
pop %rax
leave
ret