teak-llvm/clang/test/CodeGen/asm_64.c
Alexey Bataev a7ab1b4206 [X86-64] Allow additional register names in inline assembler.
Patch allows to recognize additional registers x8d, x8b, x8w - x15d, x15b, x15w in inline assembler, already recognized by backend
Differential Revision: http://reviews.llvm.org/D12594

llvm-svn: 246835
2015-09-04 03:42:23 +00:00

54 lines
2.1 KiB
C

// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm %s -o - | FileCheck %s
// CHECK-LABEL: @t1
void t1() {
__asm__ ("mov r8w, 100;");
// CHECK: call void asm sideeffect "mov r8w, 100;"
__asm__ ("mov r8d, 100;");
// CHECK: call void asm sideeffect "mov r8d, 100;"
__asm__ ("mov r8b, 100;");
// CHECK: call void asm sideeffect "mov r8b, 100;"
__asm__ ("mov r9w, 100;");
// CHECK: call void asm sideeffect "mov r9w, 100;"
__asm__ ("mov r9d, 100;");
// CHECK: call void asm sideeffect "mov r9d, 100;"
__asm__ ("mov r9b, 100;");
// CHECK: call void asm sideeffect "mov r9b, 100;"
__asm__ ("mov r10w, 100;");
// CHECK: call void asm sideeffect "mov r10w, 100;"
__asm__ ("mov r10d, 100;");
// CHECK: call void asm sideeffect "mov r10d, 100;"
__asm__ ("mov r10b, 100;");
// CHECK: call void asm sideeffect "mov r10b, 100;"
__asm__ ("mov r11w, 100;");
// CHECK: call void asm sideeffect "mov r11w, 100;"
__asm__ ("mov r11d, 100;");
// CHECK: call void asm sideeffect "mov r11d, 100;"
__asm__ ("mov r11b, 100;");
// CHECK: call void asm sideeffect "mov r11b, 100;"
__asm__ ("mov r12w, 100;");
// CHECK: call void asm sideeffect "mov r12w, 100;"
__asm__ ("mov r12d, 100;");
// CHECK: call void asm sideeffect "mov r12d, 100;"
__asm__ ("mov r12b, 100;");
// CHECK: call void asm sideeffect "mov r12b, 100;"
__asm__ ("mov r13w, 100;");
// CHECK: call void asm sideeffect "mov r13w, 100;"
__asm__ ("mov r13d, 100;");
// CHECK: call void asm sideeffect "mov r13d, 100;"
__asm__ ("mov r13b, 100;");
// CHECK: call void asm sideeffect "mov r13b, 100;"
__asm__ ("mov r14w, 100;");
// CHECK: call void asm sideeffect "mov r14w, 100;"
__asm__ ("mov r14d, 100;");
// CHECK: call void asm sideeffect "mov r14d, 100;"
__asm__ ("mov r14b, 100;");
// CHECK: call void asm sideeffect "mov r14b, 100;"
__asm__ ("mov r15w, 100;");
// CHECK: call void asm sideeffect "mov r15w, 100;"
__asm__ ("mov r15d, 100;");
// CHECK: call void asm sideeffect "mov r15d, 100;"
__asm__ ("mov r15b, 100;");
// CHECK: call void asm sideeffect "mov r15b, 100;"
}