aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJan Voung <jvoung@chromium.org>2013-05-09 13:35:25 -0700
committerJan Voung <jvoung@chromium.org>2013-05-09 13:35:25 -0700
commit4d0b8cd45df240218ff2e59a640912961072c681 (patch)
tree7589392b7b52e643d3c7690eb8b61a8485f297a0 /lib
parent4fbe1a0735e16d6fc46210006c99641f1cbad3ed (diff)
Move llvm.eh.frame.cfa to the blacklist of intrinsics.
Tests that use them now skip ABI verification. Known tests that use this are the scons tests: - the barebones_stack_alignment16 test and - the EH ones under tests/toolchain/ Also list other eh_* in the blacklist more explicitly (they were already caught by the default case). BUG=https://code.google.com/p/nativeclient/issues/detail?id=3378 TEST= scons, gcc torture, llvm R=dschuff@chromium.org Review URL: https://codereview.chromium.org/14998008
Diffstat (limited to 'lib')
-rw-r--r--lib/Analysis/NaCl/PNaClABIVerifyModule.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp b/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
index de27d5dc38..59b95592f6 100644
--- a/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
+++ b/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
@@ -148,6 +148,16 @@ bool PNaClABIVerifyModule::IsWhitelistedIntrinsic(const Function* F,
// (2) Known to be never allowed.
case Intrinsic::not_intrinsic:
case Intrinsic::adjust_trampoline:
+ case Intrinsic::eh_dwarf_cfa:
+ case Intrinsic::eh_return_i32:
+ case Intrinsic::eh_return_i64:
+ case Intrinsic::eh_sjlj_callsite:
+ case Intrinsic::eh_sjlj_functioncontext:
+ case Intrinsic::eh_sjlj_longjmp:
+ case Intrinsic::eh_sjlj_lsda:
+ case Intrinsic::eh_sjlj_setjmp:
+ case Intrinsic::eh_typeid_for:
+ case Intrinsic::eh_unwind_init:
case Intrinsic::init_trampoline:
case Intrinsic::stackprotector:
case Intrinsic::vacopy:
@@ -164,7 +174,6 @@ bool PNaClABIVerifyModule::IsWhitelistedIntrinsic(const Function* F,
case Intrinsic::ctlz: // Support via compiler_rt if arch doesn't have it?
case Intrinsic::ctpop: // Support via compiler_rt if arch doesn't have it?
case Intrinsic::cttz: // Support via compiler_rt if arch doesn't have it?
- case Intrinsic::eh_dwarf_cfa: // For EH tests.
case Intrinsic::exp: // Rounding not defined: support with fast-math?
case Intrinsic::exp2: // Rounding not defined: support with fast-math?
case Intrinsic::expect: // From __builtin_expect.