[ms-inline asm] Add a test case for the offset operator where the operand is a

global variable.

llvm-svn: 171919
This commit is contained in:
Chad Rosier 2013-01-08 23:51:48 +00:00
parent bd49198409
commit d35ae732ac
1 changed files with 6 additions and 3 deletions

View File

@ -138,13 +138,16 @@ void t14() {
// CHECK: call void asm sideeffect inteldialect ".if 1\0A\09mov eax, dword ptr $0\0A\09.else\0A\09mov ebx, j\0A\09.endif", "*m,~{eax},~{dirflag},~{fpsr},~{flags}"(i32* %{{.*}}) nounwind
}
int gvar = 10;
void t15() {
int var = 10;
__asm mov eax, var ; eax = 10
__asm mov eax, offset var ; eax = address of myvar
int lvar = 10;
__asm mov eax, lvar ; eax = 10
__asm mov eax, offset lvar ; eax = address of lvar
__asm mov eax, offset gvar ; eax = address of gvar
// CHECK: t15
// CHECK: call void asm sideeffect inteldialect "mov eax, dword ptr $0", "*m,~{eax},~{dirflag},~{fpsr},~{flags}"(i32* %{{.*}}) nounwind
// CHECK: call void asm sideeffect inteldialect "mov eax, $0", "r,~{eax},~{dirflag},~{fpsr},~{flags}"(i32* %{{.*}}) nounwind
// CHECK: call void asm sideeffect inteldialect "mov eax, $0", "r,~{eax},~{dirflag},~{fpsr},~{flags}"(i32* @{{.*}}) nounwind
}
void t16() {