[PATCH] D20518: [X86][RTM] _xabort() should not have "noreturn" attribute
Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon May 23 07:10:44 PDT 2016
This revision was automatically updated to reflect the committed changes.
Closed by commit rL270437: [X86][RTM] _xabort() should not have "noreturn" attribute (authored by abadouh).
Changed prior to commit:
http://reviews.llvm.org/D20518?vs=58075&id=58091#toc
Repository:
rL LLVM
http://reviews.llvm.org/D20518
Files:
llvm/trunk/include/llvm/IR/IntrinsicsX86.td
llvm/trunk/test/CodeGen/X86/rtm.ll
Index: llvm/trunk/include/llvm/IR/IntrinsicsX86.td
===================================================================
--- llvm/trunk/include/llvm/IR/IntrinsicsX86.td
+++ llvm/trunk/include/llvm/IR/IntrinsicsX86.td
@@ -4995,7 +4995,7 @@
def int_x86_xend : GCCBuiltin<"__builtin_ia32_xend">,
Intrinsic<[], [], []>;
def int_x86_xabort : GCCBuiltin<"__builtin_ia32_xabort">,
- Intrinsic<[], [llvm_i8_ty], [IntrNoReturn]>;
+ Intrinsic<[], [llvm_i8_ty], []>;
def int_x86_xtest : GCCBuiltin<"__builtin_ia32_xtest">,
Intrinsic<[llvm_i32_ty], [], []>;
}
Index: llvm/trunk/test/CodeGen/X86/rtm.ll
===================================================================
--- llvm/trunk/test/CodeGen/X86/rtm.ll
+++ llvm/trunk/test/CodeGen/X86/rtm.ll
@@ -2,7 +2,8 @@
declare i32 @llvm.x86.xbegin() nounwind
declare void @llvm.x86.xend() nounwind
-declare void @llvm.x86.xabort(i8) noreturn nounwind
+declare void @llvm.x86.xabort(i8) nounwind
+declare void @f1()
define i32 @test_xbegin() nounwind uwtable {
entry:
@@ -24,7 +25,20 @@
define void @test_xabort() nounwind uwtable {
entry:
tail call void @llvm.x86.xabort(i8 2)
- unreachable
+ ret void
; CHECK: test_xabort
; CHECK: xabort $2
}
+
+define void @f2(i32 %x) nounwind uwtable {
+entry:
+ %x.addr = alloca i32, align 4
+ store i32 %x, i32* %x.addr, align 4
+ call void @llvm.x86.xabort(i8 1)
+ call void @f1()
+ ret void
+; CHECK-LABEL: f2
+; CHECK: xabort $1
+; CHECK: callq f1
+}
+
\ No newline at end of file
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20518.58091.patch
Type: text/x-patch
Size: 1547 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160523/7ebb8a06/attachment.bin>
More information about the llvm-commits
mailing list