================
@@ -0,0 +1,47 @@
+; Test setjmp  store jmp_buf
+; Return address in slot 2.
+; Stack Pointer in slot 4. 
+; Clobber %r6-%r15, %f8-%f15.
+
+; RUN: llc < %s -mtriple=s390x-linux-gnu -O3 | FileCheck %s
+
+@buf = dso_local global [20 x ptr] zeroinitializer, align 8
+
+; Function Attrs: nounwind
+define dso_local signext range(i32 0, 2) i32 @main(i32 noundef signext %argc, 
ptr nocapture noundef readnone %argv) local_unnamed_addr #0 {
+entry:
+; CHECK:        stmg    %r6, %r15, 48(%r15)
+; CHECK:        aghi    %r15, -224
+; CHECK:        std     %f8, 216(%r15)
+; CHECK:        std     %f9, 208(%r15)
+; CHECK:        std     %f10, 200(%r15)
+; CHECK:        std     %f11, 192(%r15)
+; CHECK:        std     %f12, 184(%r15)
+; CHECK:        std     %f13, 176(%r15)
+; CHECK:        std     %f14, 168(%r15)
+; CHECK:        std     %f15, 160(%r15)
+; CHECK:        larl    %r1, buf
+; CHECK:        larl    %r0, .LBB0_2
+; CHECK:        stg     %r0, 8(%r1)
+; CHECK:        stg     %r15, 24(%r1)
+  %0 = tail call i32 @llvm.eh.sjlj.setjmp(ptr nonnull @buf)
+  %tobool.not = icmp eq i32 %0, 0
+  br i1 %tobool.not, label %if.end, label %return
----------------
uweigand wrote:

Is this control flow essential to what we're attempting to verify in this test? 
  The test code should ideally be a simple as possible while still exposing the 
specific characteristics we want to test.

https://github.com/llvm/llvm-project/pull/116642
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to