aboutsummaryrefslogtreecommitdiff
path: root/clang/test/CodeGen/ms-inline-asm.cpp
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2016-11-28 20:52:19 +0000
committerReid Kleckner <rnk@google.com>2016-11-28 20:52:19 +0000
commit08ebbcebb984b115ad1feb5984306f46cacdc616 (patch)
tree4235190f7af45df3e553586de92c6b0ab6f2d62b /clang/test/CodeGen/ms-inline-asm.cpp
parent115efcd3d12e3617d0a2ee02499b379c67c2c5cb (diff)
downloadllvm-08ebbcebb984b115ad1feb5984306f46cacdc616.zip
llvm-08ebbcebb984b115ad1feb5984306f46cacdc616.tar.gz
llvm-08ebbcebb984b115ad1feb5984306f46cacdc616.tar.bz2
[MS] Mangle a unique ID into all MS inline asm labels
This solves PR23715 in a way that is compatible with LTO. MSVC supports jumping to source-level labels and between inline asm blocks, but we don't. Also revert the old solution, r255201, which was to mark these calls as noduplicate. llvm-svn: 288059
Diffstat (limited to 'clang/test/CodeGen/ms-inline-asm.cpp')
-rw-r--r--clang/test/CodeGen/ms-inline-asm.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/test/CodeGen/ms-inline-asm.cpp b/clang/test/CodeGen/ms-inline-asm.cpp
index 123a0e3..584122f 100644
--- a/clang/test/CodeGen/ms-inline-asm.cpp
+++ b/clang/test/CodeGen/ms-inline-asm.cpp
@@ -126,14 +126,14 @@ void t7_using() {
void t8() {
__asm some_label:
// CHECK-LABEL: define void @_Z2t8v()
- // CHECK: call void asm sideeffect inteldialect "L__MSASMLABEL_.1__some_label:", "~{dirflag},~{fpsr},~{flags}"()
+ // CHECK: call void asm sideeffect inteldialect "L__MSASMLABEL_.{:uid}__some_label:", "~{dirflag},~{fpsr},~{flags}"()
struct A {
static void g() {
__asm jmp some_label ; This should jump forwards
__asm some_label:
__asm nop
// CHECK-LABEL: define internal void @_ZZ2t8vEN1A1gEv()
- // CHECK: call void asm sideeffect inteldialect "jmp L__MSASMLABEL_.2__some_label\0A\09L__MSASMLABEL_.2__some_label:\0A\09nop", "~{dirflag},~{fpsr},~{flags}"()
+ // CHECK: call void asm sideeffect inteldialect "jmp L__MSASMLABEL_.{:uid}__some_label\0A\09L__MSASMLABEL_.{:uid}__some_label:\0A\09nop", "~{dirflag},~{fpsr},~{flags}"()
}
};
A::g();