[llvm] 77724d5 - [LTO] Add test showing lto-discard-value-names option being ignored.
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 5 14:34:21 PST 2024
Author: Florian Hahn
Date: 2024-01-05T22:33:37Z
New Revision: 77724d5f46efea1306e036aa0eca8e2ecb64916c
URL: https://github.com/llvm/llvm-project/commit/77724d5f46efea1306e036aa0eca8e2ecb64916c
DIFF: https://github.com/llvm/llvm-project/commit/77724d5f46efea1306e036aa0eca8e2ecb64916c.diff
LOG: [LTO] Add test showing lto-discard-value-names option being ignored.
At the moment, lto-discard-value-names isn't handled properly by libLTO.
Added:
llvm/test/tools/lto/discard-value-names.ll
Modified:
Removed:
################################################################################
diff --git a/llvm/test/tools/lto/discard-value-names.ll b/llvm/test/tools/lto/discard-value-names.ll
new file mode 100644
index 00000000000000..7e2c82119028ab
--- /dev/null
+++ b/llvm/test/tools/lto/discard-value-names.ll
@@ -0,0 +1,37 @@
+; RUN: llvm-as %s -o %t.o
+; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -dylib -arch x86_64 -macos_version_min 10.10.0 -o %t.dylib %t.o -save-temps -undefined dynamic_lookup -exported_symbol _bar -lSystem -mllvm -lto-discard-value-names
+; RUN: llvm-dis %t.dylib.lto.opt.bc -o - | FileCheck --check-prefix=DISCARD %s
+
+; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -dylib -arch x86_64 -macos_version_min 10.10.0 -o %t.dylib %t.o -save-temps -undefined dynamic_lookup -exported_symbol _bar -lSystem -mllvm -lto-discard-value-names=false
+; RUN: llvm-dis %t.dylib.lto.opt.bc -o - | FileCheck --check-prefix=KEEP %s
+
+; FIXME: -lto-discard-value-names is ignored at the moment.
+; DISCARD: %cmp.i = icmp
+; DISCARD: %add = add i32
+
+; KEEP: %cmp.i = icmp
+; KEEP : %add = add i32
+
+target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
+target triple = "x86_64-apple-macosx10.10.0"
+
+declare void @external()
+
+define internal i32 @foo(i32 %a, i32 %b) {
+entry:
+ %cmp = icmp ult i32 %a, %b
+ br i1 %cmp, label %then, label %else
+
+then:
+ call void @external()
+ ret i32 10
+
+else:
+ ret i32 20
+}
+
+define i32 @bar(i32 %a) {
+ %res = call i32 @foo(i32 %a, i32 10)
+ %add = add i32 %res, %a
+ ret i32 %add
+}
More information about the llvm-commits
mailing list