[lld] f2404d5 - [LLD][ELF] Fix compressed-debug-level test on SystemZ
Ulrich Weigand via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 27 08:51:12 PDT 2023
Author: Ulrich Weigand
Date: 2023-04-27T17:49:32+02:00
New Revision: f2404d589ece81b029c607af011c372d52bff8d2
URL: https://github.com/llvm/llvm-project/commit/f2404d589ece81b029c607af011c372d52bff8d2
DIFF: https://github.com/llvm/llvm-project/commit/f2404d589ece81b029c607af011c372d52bff8d2.diff
LOG: [LLD][ELF] Fix compressed-debug-level test on SystemZ
The libz compression library on SystemZ by default makes use of the
platform's hardware-accelerated compression facility. This is much
faster than the regular software implementation, but often results in
slightly different outputs. This causes failures with the
compressed-debug-level test case.
To fix this, run this test while setting the DFLTCC environment
variable to zero, which prevents use of hardware compression and falls
back to the software implementation. (This should not have any effect
on other platforms.)
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D149273
Added:
Modified:
lld/test/ELF/compressed-debug-level.test
Removed:
################################################################################
diff --git a/lld/test/ELF/compressed-debug-level.test b/lld/test/ELF/compressed-debug-level.test
index ee95f12679972..71804ed66673d 100644
--- a/lld/test/ELF/compressed-debug-level.test
+++ b/lld/test/ELF/compressed-debug-level.test
@@ -2,18 +2,22 @@
# RUN: yaml2obj %s -o %t.o
-# RUN: ld.lld %t.o -o %t.default --compress-debug-sections=zlib
+## The environment variable DFLTCC=0 disables use of the hardware compression
+## facility on SystemZ. When this facility is enabled, slightly
diff erent
+## compression results can be seen, which would throw off the tests below.
+
+# RUN: DFLTCC=0 ld.lld %t.o -o %t.default --compress-debug-sections=zlib
# RUN: llvm-readelf --sections %t.default | FileCheck -check-prefixes=HEADER,LEVEL1 %s
-# RUN: ld.lld -O0 %t.o -o %t.O0 --compress-debug-sections=zlib
+# RUN: DFLTCC=0 ld.lld -O0 %t.o -o %t.O0 --compress-debug-sections=zlib
# RUN: llvm-readelf --sections %t.O0 | FileCheck -check-prefixes=HEADER,LEVEL1 %s
# RUN: cmp %t.default %t.O0
-# RUN: ld.lld -O1 %t.o -o %t.O1 --compress-debug-sections=zlib
+# RUN: DFLTCC=0 ld.lld -O1 %t.o -o %t.O1 --compress-debug-sections=zlib
# RUN: llvm-readelf --sections %t.O1 | FileCheck -check-prefixes=HEADER,LEVEL1 %s
# RUN: cmp %t.default %t.O1
-# RUN: ld.lld -O2 %t.o -o %t.O2 --compress-debug-sections=zlib
+# RUN: DFLTCC=0 ld.lld -O2 %t.o -o %t.O2 --compress-debug-sections=zlib
# RUN: llvm-readelf --sections %t.O2 | FileCheck -check-prefixes=HEADER,LEVEL6 %s
## LLD uses zlib compression of level 1 when -O0, -O1 and level 6 when -O2.
More information about the llvm-commits
mailing list