
This pr includes fixes for original pr##116642. Implementation for __builtin_setjmp and __builtin_longjmp for SystemZ..
27 lines
690 B
C
27 lines
690 B
C
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 5
|
|
// RUN: %clang_cc1 -triple s390x-linux -emit-llvm -o - %s | FileCheck %s
|
|
|
|
void *buf[20];
|
|
|
|
// CHECK-LABEL: define dso_local void @foo(
|
|
// CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
|
|
// CHECK-NEXT: [[ENTRY:.*:]]
|
|
// CHECK-NEXT: [[TMP0:%.*]] = call i32 @llvm.eh.sjlj.setjmp(ptr @buf)
|
|
// CHECK-NEXT: ret void
|
|
//
|
|
void foo()
|
|
{
|
|
__builtin_setjmp (buf);
|
|
}
|
|
|
|
// CHECK-LABEL: define dso_local void @foo1(
|
|
// CHECK-SAME: ) #[[ATTR0]] {
|
|
// CHECK-NEXT: [[ENTRY:.*:]]
|
|
// CHECK-NEXT: call void @llvm.eh.sjlj.longjmp(ptr @buf)
|
|
// CHECK-NEXT: unreachable
|
|
//
|
|
void foo1()
|
|
{
|
|
__builtin_longjmp (buf, 1);
|
|
}
|