Package: clang-3.7 Version: 1:3.7.1-1+b1 Severity: serious Justification: segfault
Hi, packaging a new upstream version of afl we've discovered that there's a problem with current clang-3.7 on s390x (2.08b-3 build against clang-3.7/llvm-3.7-dev today) [1]. Probe case (provided by Michael Zalewski) tested on s390x porterbox: <cut> $ echo 'int main() { printf("%p\n", __builtin_return_address(0)); return 0; }' > test.c $ clang-3.7 -g -O2 -fPIE -fPIC test.c test.c:1:14: warning: implicitly declaring library function 'printf' with type 'int (const char *, ...)' int main() { printf("%p\n", __builtin_return_address(0)); return 0; } ^ test.c:1:14: note: include the header <stdio.h> or explicitly provide a declaration for 'printf' 0 libLLVM-3.7.so.1 0x000003fffbf1007e llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 38 1 libLLVM-3.7.so.1 0x000003fffbf0f2be 2 libLLVM-3.7.so.1 0x000003ffff976dcc 3 libLLVM-3.7.so.1 0x000003fffc6b2e3a llvm::SystemZTargetLowering::LowerOperation(llvm::SDValue, llvm::SelectionDAG&) const + 74 4 libLLVM-3.7.so.1 0x000003fffbd2c13e 5 libLLVM-3.7.so.1 0x000003fffbd2ecea llvm::SelectionDAG::Legalize() + 418 6 libLLVM-3.7.so.1 0x000003fffbe3af70 llvm::SelectionDAGISel::CodeGenAndEmitDAG() + 616 7 libLLVM-3.7.so.1 0x000003fffbe3f26e llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 1126 8 libLLVM-3.7.so.1 0x000003fffbe40cfe llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 1078 9 libLLVM-3.7.so.1 0x000003fffb500710 llvm::FPPassManager::runOnFunction(llvm::Function&) + 584 10 libLLVM-3.7.so.1 0x000003fffb500a0e llvm::FPPassManager::runOnModule(llvm::Module&) + 54 11 libLLVM-3.7.so.1 0x000003fffb5002be llvm::legacy::PassManagerImpl::run(llvm::Module&) + 990 12 clang 0x00000000804f274c clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::raw_pwrite_stream*) + 2700 13 clang 0x00000000804da5c8 14 clang 0x00000000806fdcac clang::ParseAST(clang::Sema&, bool, bool) + 868 15 clang 0x00000000802ff7f6 clang::FrontendAction::Execute() + 622 16 clang 0x00000000802d1fd6 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 398 17 clang 0x00000000802b58aa clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 2346 18 clang 0x00000000802af932 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 2754 19 clang 0x00000000802abc4c main + 1380 20 libc.so.6 0x000003fffa8be4c0 __libc_start_main + 272 21 clang 0x00000000802ae6d6 Stack dump: 0. Program arguments: /usr/lib/llvm-3.7/bin/clang -cc1 -triple s390x-ibm-linux-gnu -emit-obj -disable-free -disable-llvm-verifier -main-file-name test.c -mrelocation-model pic -pic-level 2 -mthread-model posix -fmath-errno -masm-verbose -mconstructor-aliases -fuse- init-array -target-cpu z10 -target-linker-version 2.26 -momit-leaf-frame-pointer -g -dwarf-column-info -resource-dir /usr/lib/llvm-3.7/bin/../lib/clang/3.7.1 -internal-isystem /usr/local/include -internal-isystem /usr/lib/llvm-3.7/bin/../lib/clang/3.7.1/include -internal-externc-isystem /usr/include/s390x-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O2 -fdebug-compilation-dir /home/stender -ferror-limit 19 -fmessage-length 105 -mstackrealign -fno-signed-char -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -o /tmp/test-ea55f5.o -x c test.c 1. <eof> parser at end of file 2. Code generation 3. Running pass 'Function Pass Manager' on module 'test.c'. 4. Running pass 'SystemZ DAG->DAG Pattern Instruction Selection' on function '@main' clang: error: unable to execute command: Segmentation fault clang: error: clang frontend command failed due to signal (use -v to see invocation) Debian clang version 3.7.1-2 (tags/RELEASE_371/final) (based on LLVM 3.7.1) Target: s390x-ibm-linux-gnu Thread model: posix clang: note: diagnostic msg: PLEASE submit a bug report to http://bugs.debian.org/ and include the crash backtrace, preprocessed source, and associated run script. clang: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang: note: diagnostic msg: /tmp/test-e9248d.c clang: note: diagnostic msg: /tmp/test-e9248d.sh clang: note: diagnostic msg: </cut> BTW, this is a regression from clang-3.6 (2.08b-1 and -2 have been build against clang-3.6/llvm-3.6-dev yesterday with same result) [2], so please reassign or clone that bug report if found suitable. Thanks, DS [1] https://bugs.debian.org/818288 (afl: FTBFS on s390x) [2] https://buildd.debian.org/status/logs.php?pkg=afl&arch=s390x -- System Information: Debian Release: stretch/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 4.3.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages clang-3.7 depends on: ii binutils 2.26-5 ii libc6 2.21-9 ii libc6-dev 2.21-9 ii libclang-common-3.7-dev 1:3.7.1-1+b1 ii libclang1-3.7 1:3.7.1-1+b1 ii libedit2 3.1-20150325-1+b1 ii libffi6 3.2.1-4 ii libgcc-5-dev 5.3.1-10 ii libgcc1 1:5.3.1-10 ii libllvm3.7 1:3.7.1-1+b1 ii libobjc-5-dev 5.3.1-10 ii libstdc++-5-dev 5.3.1-10 ii libstdc++6 5.3.1-10 ii libtinfo5 6.0+20160213-1 ii zlib1g 1:1.2.8.dfsg-2+b1 Versions of packages clang-3.7 recommends: ii llvm-3.7-dev 1:3.7.1-1+b1 ii python 2.7.11-1 Versions of packages clang-3.7 suggests: pn clang-3.7-doc <none> pn gnustep <none> pn gnustep-devel <none> -- no debconf information