diff options
-rw-r--r-- | test/Transforms/ADCE/dce_pure_call.ll | 9 | ||||
-rw-r--r-- | test/Transforms/ADCE/dce_pure_invoke.ll | 13 |
2 files changed, 22 insertions, 0 deletions
diff --git a/test/Transforms/ADCE/dce_pure_call.ll b/test/Transforms/ADCE/dce_pure_call.ll new file mode 100644 index 0000000..dad2912 --- /dev/null +++ b/test/Transforms/ADCE/dce_pure_call.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | opt -adce | llvm-dis | not grep call + +declare int %strlen(sbyte*) + +void %test() { + ;; Dead call should be deleted! + call int %strlen(sbyte *null) + ret void +} diff --git a/test/Transforms/ADCE/dce_pure_invoke.ll b/test/Transforms/ADCE/dce_pure_invoke.ll new file mode 100644 index 0000000..608c655 --- /dev/null +++ b/test/Transforms/ADCE/dce_pure_invoke.ll @@ -0,0 +1,13 @@ +; RUN: llvm-as < %s | opt -adce | llvm-dis | not grep null + +declare int %strlen(sbyte*) + +int %test() { + ;; Dead call should be deleted! + invoke int %strlen(sbyte *null) to label %Cont unwind label %Other +Cont: + ret int 0 +Other: + ret int 1 +} + |