diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-03-27 22:04:28 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-03-27 22:04:28 +0000 |
| commit | 49e6a70fe3e0ec79cf44c47a5503fe2fb5121dd3 (patch) | |
| tree | 8c21bb8aca108f408dc52fa087bb19d556c028a3 /llvm/test/Transforms/ObjCARC | |
| parent | 2d6d7efb006c431d16a6c522e79617d24064c142 (diff) | |
| download | bcm5719-llvm-49e6a70fe3e0ec79cf44c47a5503fe2fb5121dd3.tar.gz bcm5719-llvm-49e6a70fe3e0ec79cf44c47a5503fe2fb5121dd3.zip | |
Verifier: Call verifyModule() from llc and opt
Change `llc` and `opt` to run `verifyModule()`. This ensures that we
check the full module before `FunctionPass::doInitialization()` ever
gets called (I was getting crashes in `DwarfDebug` instead of verifier
failures when testing a WIP patch that checks operands of compile
units). In `opt`, also move up debug-info-stripping so that it still
runs before verification.
There was a fair bit of broken code that was sitting in tree.
Interestingly, some were cases of a `select` that referred to itself in
`-instcombine` tests (apparently an intermediate result). I split them
off to `*-noverify.ll` tests with RUN lines like this:
opt < %s -S -disable-verify -instcombine | opt -S | FileCheck %s
This avoids verifying the input file (so we can get the broken code into
`-instcombine), but still verifies the output with a second call to
`opt` (to verify that `-instcombine` will clean it up like it should).
llvm-svn: 233432
Diffstat (limited to 'llvm/test/Transforms/ObjCARC')
| -rw-r--r-- | llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll b/llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll index 5d19f355be3..0a68541d935 100644 --- a/llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll +++ b/llvm/test/Transforms/ObjCARC/move-and-merge-autorelease.ll @@ -99,9 +99,9 @@ bb81: ; preds = %bb, %bb76 %tmp10.1 = phi %0* [ %tmp10.0, %bb76 ], [ null, %bb ] %tmp83 = bitcast %0* %tmp10.1 to i8* %tmp84 = call i8* @objc_retain(i8* %tmp83) nounwind - %tmp88 = bitcast i8* %tmp87 to %0* call void @objc_release(i8* %tmp23) nounwind %tmp87 = call i8* @objc_autorelease(i8* %tmp84) nounwind + %tmp88 = bitcast i8* %tmp87 to %0* %tmp92 = bitcast %0* %tmp10.1 to i8* call void @objc_release(i8* %tmp92) nounwind ret %0* %tmp88 |

