forked from OSchip/llvm-project
Fix test/CodeGen/builtins.c for platforms that don't lower sjlj
Opt in Win64 to supporting sjlj lowering. We have the backend lowering, so I think this was just an oversight because WinX86_64TargetCodeGenInfo doesn't inherit from X86_64TargetCodeGenInfo. llvm-svn: 231280
This commit is contained in:
parent
265ffbeb0c
commit
533bd17268
|
@ -1724,6 +1724,10 @@ public:
|
|||
unsigned getOpenMPSimdDefaultAlignment(QualType) const override {
|
||||
return HasAVX ? 32 : 16;
|
||||
}
|
||||
|
||||
bool hasSjLjLowering(CodeGen::CodeGenFunction &CGF) const override {
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
void WinX86_64TargetCodeGenInfo::SetTargetAttributes(const Decl *D,
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm < %s| FileCheck %s
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-llvm < %s| FileCheck %s
|
||||
// RUN: %clang_cc1 -triple x86_64-windows -emit-llvm < %s| FileCheck %s
|
||||
// RUN: %clang_cc1 -triple powerpc-unknown-unknown -emit-llvm < %s| FileCheck %s
|
||||
// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -emit-llvm < %s| FileCheck %s
|
||||
|
||||
|
|
|
@ -220,6 +220,8 @@ void test_float_builtin_ops(float F, double D, long double LD) {
|
|||
// CHECK: call x86_fp80 @llvm.fabs.f80(x86_fp80
|
||||
}
|
||||
|
||||
// __builtin_longjmp isn't supported on all platforms, so only test it on X86.
|
||||
#ifdef __x86_64__
|
||||
// CHECK-LABEL: define void @test_builtin_longjmp
|
||||
void test_builtin_longjmp(void **buffer) {
|
||||
// CHECK: [[BITCAST:%.*]] = bitcast
|
||||
|
@ -227,6 +229,7 @@ void test_builtin_longjmp(void **buffer) {
|
|||
__builtin_longjmp(buffer, 1);
|
||||
// CHECK-NEXT: unreachable
|
||||
}
|
||||
#endif
|
||||
|
||||
// CHECK-LABEL: define i64 @test_builtin_readcyclecounter
|
||||
long long test_builtin_readcyclecounter() {
|
||||
|
|
Loading…
Reference in New Issue