-; RUN: llc < %s -march=x86-64 | FileCheck %s --check-prefix=CHECK-64
+; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s --check-prefix=CHECK-64
+; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s --check-prefix=CHECK-64
; RUN: llc < %s -march=x86 | FileCheck %s --check-prefix=CHECK-32
; CHECK-64: g64xh:
-; CHECK-64: testb $8, %ah
+; CHECK-64: testb $8, {{%ah|%ch}}
; CHECK-64: ret
; CHECK-32: g64xh:
; CHECK-32: testb $8, %ah
ret void
}
; CHECK-64: g64xl:
-; CHECK-64: testb $8, %dil
+; CHECK-64: testb $8, [[A0L:%dil|%cl]]
; CHECK-64: ret
; CHECK-32: g64xl:
; CHECK-32: testb $8, %al
ret void
}
; CHECK-64: g32xh:
-; CHECK-64: testb $8, %ah
+; CHECK-64: testb $8, {{%ah|%ch}}
; CHECK-64: ret
; CHECK-32: g32xh:
; CHECK-32: testb $8, %ah
ret void
}
; CHECK-64: g32xl:
-; CHECK-64: testb $8, %dil
+; CHECK-64: testb $8, [[A0L]]
; CHECK-64: ret
; CHECK-32: g32xl:
; CHECK-32: testb $8, %al
ret void
}
; CHECK-64: g16xh:
-; CHECK-64: testb $8, %ah
+; CHECK-64: testb $8, {{%ah|%ch}}
; CHECK-64: ret
; CHECK-32: g16xh:
; CHECK-32: testb $8, %ah
ret void
}
; CHECK-64: g16xl:
-; CHECK-64: testb $8, %dil
+; CHECK-64: testb $8, [[A0L]]
; CHECK-64: ret
; CHECK-32: g16xl:
; CHECK-32: testb $8, %al
ret void
}
; CHECK-64: g64x16:
-; CHECK-64: testw $-32640, %di
+; CHECK-64: testw $-32640, %[[A0W:di|cx]]
; CHECK-64: ret
; CHECK-32: g64x16:
; CHECK-32: testw $-32640, %ax
ret void
}
; CHECK-64: g32x16:
-; CHECK-64: testw $-32640, %di
+; CHECK-64: testw $-32640, %[[A0W]]
; CHECK-64: ret
; CHECK-32: g32x16:
; CHECK-32: testw $-32640, %ax
ret void
}
; CHECK-64: g64x32:
-; CHECK-64: testl $268468352, %edi
+; CHECK-64: testl $268468352, %e[[A0W]]
; CHECK-64: ret
; CHECK-32: g64x32:
; CHECK-32: testl $268468352, %eax