aboutsummaryrefslogtreecommitdiff
path: root/test/NaCl/PNaClABI/abi-switch.ll
AgeCommit message (Collapse)Author
2013-07-02Enable ABI verification check for whitelisting external symbolsEli Bendersky
BUG=https://code.google.com/p/nativeclient/issues/detail?id=3339 R=mseaborn@chromium.org Review URL: https://codereview.chromium.org/18426002
2013-06-04PNaCl ABI checker: Check for normal form introduced by ReplacePtrsWithIntsMark Seaborn
Move most of the per-instruction checking in PNaClABIVerifyFunctions::runOnFunction() to a top-level function so that it can do an early exit to reject the instruction. Reporting just a single error per instruction makes the test expectations easier to understand and update. Remove the check for metadata types. Metadata won't be part of PNaCl's stable ABI, so if the metadata-rejecting check is disabled for debugging purpose, we don't really need to recursively check the metadata's types. This lets us remove the recursive checks of Constants and types. We now only accept a very restricted, non-recursive set of Constants inside functions and global variable initialisers. This means PNaClABITypeChecker doesn't need to be stateful any more, and its methods can become static. This change also fixes a hole where the operands of "switch" instructions weren't fully checked. Add a test to replace-ptrs-with-ints.ll to ensure that "undef" doesn't appear directly in loads and stores. BUG=https://code.google.com/p/nativeclient/issues/detail?id=3343 TEST=PNaCl toolchain trybots + GCC torture tests + LLVM test suite Review URL: https://codereview.chromium.org/15780014