[llvm-bugs] [Bug 25909] New: [Polly] Schedule does not model irreducible control flow
https://llvm.org/bugs/show_bug.cgi?id=25909 Bug ID: 25909 Summary: [Polly] Schedule does not model irreducible control flow Product: Projects Version: unspecified Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: Polly Assignee: polly-...@googlegroups.com Reporter: tob...@grosser.es CC: llvm-bugs@lists.llvm.org Classification: Unclassified Created attachment 15507 --> https://llvm.org/bugs/attachment.cgi?id=15507&action=edit Irredubicle control flow For a test cast that contains irregular control flow with loops (attached) we do not generate loop dimensions in the schedule: Stmt_start_split Domain := [p] -> { Stmt_start_split[] }; Schedule := [p] -> { Stmt_start_split[] -> [0] }; MustWriteAccess :=[Reduction Type: NONE] [Scalar: 1] [p] -> { Stmt_start_split[] -> MemRef_cmp[] }; Stmt_S1 Domain := [p] -> { Stmt_S1[] : p <= 0 }; Schedule := [p] -> { Stmt_S1[] -> [1] }; MustWriteAccess :=[Reduction Type: NONE] [Scalar: 0] [p] -> { Stmt_S1[] -> MemRef_A[0] }; Stmt_S2 Domain := [p] -> { Stmt_S2[] : p >= 1 }; Schedule := [p] -> { Stmt_S2[] -> [2] }; MustWriteAccess :=[Reduction Type: NONE] [Scalar: 0] [p] -> { Stmt_S2[] -> MemRef_A[0] }; This is likely to be wrong and we should probably just detect irregular control flow and bail out if found. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25906] Alignment when calling a chain of functions
https://llvm.org/bugs/show_bug.cgi?id=25906 Daniel Jasper changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |LATER --- Comment #1 from Daniel Jasper --- The bar for new/additional options is: http://clang.llvm.org/docs/ClangFormatStyleOptions.html#adding-additional-style-options Reopen if this qualifies and assign it to the prospective patch author/maintainer. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25891] [ms] clang-cl emits code that causes link.exe /incremental to write broken binaries, related to function pointers
https://llvm.org/bugs/show_bug.cgi?id=25891 David Majnemer changed: What|Removed |Added Status|NEW |RESOLVED Component|LLVM Codegen|MC Version|unspecified |trunk Resolution|--- |FIXED Assignee|unassignedclangbugs@nondot. |unassignedb...@nondot.org |org | Product|clang |libraries --- Comment #8 from David Majnemer --- Fixed in r256137. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25910] New: clang allows two var definitions with the same mangled name
https://llvm.org/bugs/show_bug.cgi?id=25910 Bug ID: 25910 Summary: clang allows two var definitions with the same mangled name Product: clang Version: trunk Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: C++ Assignee: unassignedclangb...@nondot.org Reporter: andreybokha...@gmail.com CC: dgre...@apple.com, llvm-bugs@lists.llvm.org Classification: Unclassified clang allows two var definitions with the same mangled name; only one var is emitted: $ cat test.cpp extern "C" { int _ZN2nm3abcE = 1; } namespace nm { float abc = 2; } float foo() { return _ZN2nm3abcE + nm::abc; } $ clang -emit-llvm -S -c test.cpp [no errors printed] $ cat test.ll ... @_ZN2nm3abcE = global float 2.00e+00, align 4 [int _ZN2nm3abcE definition is nowhere to be found] Yours, Andrey = Software Engineer Intel Compiler Team Intel -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25907] Compiler seg-faults in lto for indirect goto
https://llvm.org/bugs/show_bug.cgi?id=25907 Teresa Johnson changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #1 from Teresa Johnson --- The assert happened because some functions were materialized when creating the lazy module reader due to blockaddress forward references (via materializeForwardReferencedFunctions). The forward referenced function contained a reference to module level TBAA metadata, resulting in creation of a forward MD reference. However, since this was during gold's claim_file_hook handler, the bitcode reader is destroyed without doing any more materialization (including metadata materialization), since it is just looking to see if the file is valid bitcode or not. Therefore, the forward MD reference remained and the assert fired. I have decided to remove the assert altogether. It was useful during development of the ThinLTO metadata linking, but doesn't seem very robust or necessary. There isn't any requirement that the full bitcode be materialized before tossing out the bitcode reader as in situations like this one. Fixed in r256161. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 24563] LiveDebugVariables propagates constant values without joining at bb boundaries
https://llvm.org/bugs/show_bug.cgi?id=24563 Adrian Prantl changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #9 from Adrian Prantl --- 256188: Fix PR24563 (LiveDebugVariables unconditionally propagates all DBG_VALUEs) LiveDebugVariables unconditionally propagates all DBG_VALUE down the dominator tree, which happens to work fine if there already is another DBG_VALUE or the DBG_VALUE happends to describe a single-assignment vreg but is otherwise wrong if the DBG_VALUE is coming from only one of the predecessors. In r255759 we introduced a proper data flow analysis scheduled after LiveDebugVariables that correctly propagates DBG_VALUEs across basic block boundaries. With the new pass in place, the incorrect propagation in LiveDebugVariables can be retired witout loosing any of the benefits where LiveDebugVariables happened to do the right thing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@256188 -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25911] New: -Wpessimizing-move doesn't trigger inside template instantiations
https://llvm.org/bugs/show_bug.cgi?id=25911 Bug ID: 25911 Summary: -Wpessimizing-move doesn't trigger inside template instantiations Product: clang Version: unspecified Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: C++11 Assignee: unassignedclangb...@nondot.org Reporter: dch...@google.com CC: dgre...@apple.com, llvm-bugs@lists.llvm.org Classification: Unclassified https://llvm.org/bugs/show_bug.cgi?id=9679 is a bug that indicates that it's generally unsafe to emit fix-its inside template instantiations. However, this leads to omission of a pessimizing-move warning in some circumstances where it could apply. One example: dcheng@nausicaa:~/src/chrome/src$ cat test.cc #include template class my_scoped_ptr { public: explicit my_scoped_ptr(T* ptr) : ptr_(ptr) {} ~my_scoped_ptr() { delete ptr_; } my_scoped_ptr(my_scoped_ptr&& other) : ptr_(nullptr) { using std::swap; swap(ptr_, other.ptr_); } static my_scoped_ptr New() { return std::move(my_scoped_ptr(nullptr)); } private: T* ptr_; }; int main() { my_scoped_ptr scoper = my_scoped_ptr::New(); } dcheng@nausicaa:~/src/chrome/src$ third_party/llvm-build/Release+Asserts/bin/clang++ -std=c++11 -W all test.cc dcheng@nausicaa:~/src/chrome/src$ -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25912] New: llc assertion failure with COFF target
https://llvm.org/bugs/show_bug.cgi?id=25912 Bug ID: 25912 Summary: llc assertion failure with COFF target Product: new-bugs Version: trunk Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: new bugs Assignee: unassignedb...@nondot.org Reporter: davi...@google.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified pass the following simple ll file to llc, llc will assert. I have not looked at in in details. ; ModuleID = '' target datalayout = "e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-win64-coff" @llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 0, void ()* @__llvm_profile_init, i8* null }] ; Function Attrs: noinline define internal void @__llvm_profile_init() unnamed_addr #1 { ret void } attributes #0 = { nounwind } The assertion failure is: llc: /usr/local/google/davidxl/dev/llvm/include/llvm/Support/Casting.h:237: typename cast_retty::ret_type llvm::cast(Y *) [X = llvm::MCSectionCOFF, Y = llvm::MCSection]: Assertion `isa(Val) && "cast() argument of incompatible type!"' failed. 0 llc 0x00670b41 backtrace + 65 1 llc 0x03ccd4c1 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 241 2 llc 0x03cce9f4 3 libpthread.so.0 0x7f379b9e3330 4 libc.so.6 0x7f379ac0bcb7 gsignal + 55 5 libc.so.6 0x7f379ac0f0a8 abort + 328 6 libc.so.6 0x7f379ac04b76 7 libc.so.6 0x7f379ac04c22 8 llc 0x02cc7eb4 9 llc 0x02634513 llvm::AsmPrinter::EmitXXStructorList(llvm::DataLayout const&, llvm::Constant const*, bool) + 3523 10 llc 0x0261d26e llvm::AsmPrinter::EmitSpecialLLVMGlobal(llvm::GlobalVariable const*) + 766 -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25902] Cross-DSO control flow integrity doesn't work for 32 target on 64-bit host
https://llvm.org/bugs/show_bug.cgi?id=25902 Evgeniy Stepanov changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #1 from Evgeniy Stepanov --- Actually reproduces w/o the cross-dso stuff (with a slightly different test case). Fixed in r256205. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25913] New: AOSP build fails due to assertion failure at llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:795
https://llvm.org/bugs/show_bug.cgi?id=25913 Bug ID: 25913 Summary: AOSP build fails due to assertion failure at llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:795 Product: new-bugs Version: trunk Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: new bugs Assignee: unassignedb...@nondot.org Reporter: pzh...@codeaurora.org CC: llvm-bugs@lists.llvm.org Classification: Unclassified Failed when building AOSP for angler with LLVM tip. This only fails with LLVM tip, not with the prebuilts/clang in AOSP. To reproduce the issue. Run the following command under the AOSP root dir. /bin/bash -c "(true) && (mkdir -p out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/) && (PWD=/proc/self/cwd /home/aosp/nightly/install/community-mainline/cross/latest/bin/clang++ -I external/libcxxabi/include -I external/libcxx/include -I external/libunwind_llvm/include -I external/libcxxabi -I out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates -I out/target/product/angler/gen/STATIC_LIBRARIES/libc++abi_intermediates -I libnativehelper/include/nativehelper \$(cat out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/import_includes) -isystem system/core/include -isystem system/media/audio/include -isystem hardware/libhardware/include -isystem hardware/libhardware_legacy/include -isystem hardware/ril/include -isystem libnativehelper/include -isystem frameworks/native/include -isystem frameworks/native/opengl/include -isystem frameworks/av/include -isystem frameworks/base/include -isystem out/target/product/angler/obj/include -isystem device/huawei/angler/kernel-headers -isystem hardware/qcom/msm8994/kernel-headers -isystem bionic/libc/arch-arm/include -isystem bionic/libc/include -isystem bionic/libc/kernel/uapi -isystem bionic/libc/kernel/common -isystem bionic/libc/kernel/uapi/asm-arm -isystem bionic/libm/include -isystem bionic/libm/include/arm -c-fno-exceptions -Wno-multichar -msoft-float -ffunction-sections -fdata-sections -funwind-tables -fstack-protector-strong -Werror=format-security -D_FORTIFY_SOURCE=2 -fno-short-enums -no-canonical-prefixes -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -DNDEBUG -g -Wstrict-aliasing=2 -DNDEBUG -UDEBUG -D__compiler_offsetof=__builtin_offsetof -Werror=int-conversion -Wno-reserved-id-macro -Wno-format-pedantic -Wno-unused-command-line-argument -fcolor-diagnostics -nostdlibinc -target arm-linux-androideabi-target arm-linux-androideabi -Bprebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/arm-linux-androideabi/bin -fvisibility-inlines-hidden -Wsign-promo -Wno-inconsistent-missing-override -nostdlibinc -target arm-linux-androideabi -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -frtti -fPIC -no-integrated-as -std=gnu++14 -std=c++14 -fexceptions -Wall -Wextra -Wno-unused-function -Werror -DHAVE___CXA_THREAD_ATEXIT_IMPL -DLIBCXXABI_USE_LLVM_UNWINDER=1 -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=address-of-temporary -Werror=null-dereference -Werror=return-type -Wno-unknown-attributes -MD -MF out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.d -o out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.o external/libcxxabi/src/cxa_guard.cpp) && (cp out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.d out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.P; sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\$//' -e '/^\$/ d' -e 's/\$/ :/' < out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.d >> out/target/product/angler/obj_arm/STATIC_LIBRARIES/libc++abi_intermediates/src/cxa_guard.P)" clang++: /home/aosp/nightly/src/community-mainline/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:795: bool emitDebugValueComment(const llvm::MachineInstr *, llvm::AsmPrinter &): Assertion `Op == dwarf::DW_OP_minus' failed. 0 clang++ 0x011f0a88 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40 1 clang++ 0x011eef96 llvm::sys::RunSignalHandlers() + 70 2 clang++ 0x011f12a9 3 libpthread.so.0 0x2aee83e45cb0 4 libc.so.6 0x2aee849b20d5 gsignal + 53 5 libc.so.6 0x2aee849b583b abort + 379 6 libc.so.6 0x2aee849aad9e 7 libc.so.6 0x2aee849aae42 8 clang++ 0x0173f064 9 clang++ 0x00708c03 10 clang++ 0x00be16bc llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 124 11 clang++ 0x00eb24ed llvm::FPPassManager::runOnFunction
[llvm-bugs] [Bug 25914] New: Frontend Crash (Clang 3.7.0 with Microsoft CodeGen) with "using" and "unique_ptr".
https://llvm.org/bugs/show_bug.cgi?id=25914 Bug ID: 25914 Summary: Frontend Crash (Clang 3.7.0 with Microsoft CodeGen) with "using" and "unique_ptr". Product: clang Version: 3.7 Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: C++11 Assignee: unassignedclangb...@nondot.org Reporter: rickvanp...@gmail.com CC: dgre...@apple.com, llvm-bugs@lists.llvm.org Classification: Unclassified Note: This only occurs in Clang 3.7.0 with Microsoft CodeGen. Normal Clang 3.7.0 distributed with LLVM does not crash. # Crash reproducer for clang with Microsoft CodeGen version 3.7.0 # Driver args: "-c" "-fdiagnostics-format=msvc" "--target=i686-pc-windows-msvc" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\include" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\include" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\atlmfc\\include" "-I" "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.10240.0\\ucrt" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\um" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\shared" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\winrt" "-g2" "-gdwarf-2" "-o" "Debug\\ScratchPad.obj" "-Wall" "-O0" "-fno-strict-aliasing" "-fno-omit-frame-pointer" "-fno-exceptions" "-fstack-protector" "-fpic" "-fno-short-enums" "-fno-rtti" "-std=c++1y" "-D" "WIN32" "-D" "_DEBUG" "-D" "_CONSOLE" "-D" "NDEBUG" "-D" "_UNICODE" "-D" "UNICODE" "-x" "c++" "-fms-extensions" "-fno-ms-compatibility" "-v" "-c" "-D" "_DEBUG" "-D" "_MT" "-Xclang" "--dependent-lib=libcmtd" "-Xclang" "--dependent-lib=oldnames" "ScratchPad.cpp" # Original command: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\bin\\x86\\clang.exe" "-cc1" "-triple" "i686-pc-windows-msvc19.0.0" "-emit-obj" "-mrelax-all" "-disable-free" "-disable-llvm-verifier" "-main-file-name" "ScratchPad.cpp" "-mrelocation-model" "pic" "-pic-level" "1" "-mthread-model" "posix" "-mdisable-fp-elim" "-relaxed-aliasing" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases" "-target-cpu" "pentium4" "-v" "-gdwarf-2" "-dwarf-column-info" "-coverage-file" "C:\\Code\\ScratchPad\\ScratchPad\\Debug\\ScratchPad.obj" "-resource-dir" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\bin\\x86\\..\\lib\\clang\\3.7.0" "-D" "WIN32" "-D" "_DEBUG" "-D" "_CONSOLE" "-D" "NDEBUG" "-D" "_UNICODE" "-D" "UNICODE" "-D" "_DEBUG" "-D" "_MT" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\include" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\include" "-I" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\atlmfc\\include" "-I" "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.10240.0\\ucrt" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\um" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\shared" "-I" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\winrt" "-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\bin\\x86\\..\\lib\\clang\\3.7.0\\include" "-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\include" "-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\include" "-internal-isystem" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\atlmfc\\include" "-internal-isystem" "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.10240.0\\ucrt" "-internal-isystem" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\um" "-internal-isystem" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\shared" "-internal-isystem" "C:\\Program Files (x86)\\Windows Kits\\8.1\\Include\\winrt" "-O0" "-Wall" "-std=c++1y" "-fdeprecated-macro" "-fdebug-compilation-dir" "C:\\Code\\ScratchPad\\ScratchPad" "-ferror-limit" "19" "-fmessage-length" "0" "-stack-protector" "1" "-mstackrealign" "-fno-rtti" "-fms-extensions" "-fms-compatibility-version=19" "-fdelayed-template-parsing" "-fobjc-runtime=gnustep" "-fdiagnostics-show-option" "-fdiagnostics-format" "msvc" "--dependent-lib=libcmtd" "--dependent-lib=oldnames" "-o" "Debug\\ScratchPad.obj" "-x" "c++" "ScratchPad.cpp" "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\Clang 3.7\\bin\\x86\\clang.exe" "-cc1" "-triple" "i686-pc-windows-msvc19.0.0" "-emit-obj" "-mrelax-all" "-disable-free" "-disable-llvm-verifier" "-main-file-name" "ScratchPad.cpp" "-mrelocation-model" "pic" "-pic-level" "1" "-mthread-model" "posix" "-mdisable-fp-elim" "-relaxed-aliasing" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases" "-target-cpu" "pentium4" "-v" "-gdwarf-2" "-dwarf-column-info" "-D" "WIN32" "-D" "_DEBUG" "-D" "_CONSOLE" "-D" "NDEBUG" "-D" "_UNICODE" "-D" "UNICODE" "-D" "_DEBUG" "-D" "_MT" "-O0" "-Wall" "-std=c++1y" "-fdeprecat
[llvm-bugs] [Bug 25915] New: rL256003 breaks LTO with debug info
https://llvm.org/bugs/show_bug.cgi?id=25915 Bug ID: 25915 Summary: rL256003 breaks LTO with debug info Product: lld Version: unspecified Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: All Bugs Assignee: unassignedb...@nondot.org Reporter: kra...@google.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified Consider the following program: $ cat lala.cc const char lala[] = { 0 }; Let's compile it with -flto and -g, and link using Gold plugin: $ /usr/local/google/home/krasin/src/llvm.org/release-build/bin/clang++ -flto -g -fuse-ld=gold -o lala lala.cc clang-3.8: error: unable to execute command: Segmentation fault (core dumped) clang-3.8: error: linker command failed due to signal (use -v to see invocation) Gold under gdb: Program received signal SIGSEGV, Segmentation fault. (anonymous namespace)::IRLinker::findNeededSubprograms (this=this@entry=0x7fff6350, ValueMap=...) at /usr/local/google/home/krasin/src/llvm.org/llvm/lib/Linker/IRMover.cpp:1196 1196for (const Metadata *Op : CU->getSubprograms()->operands()) { (gdb) bt #0 (anonymous namespace)::IRLinker::findNeededSubprograms (this=this@entry=0x7fff6350, ValueMap=...) at /usr/local/google/home/krasin/src/llvm.org/llvm/lib/Linker/IRMover.cpp:1196 #1 0x7454e361 in linkNamedMDNodes (this=0x7fff6350) at /usr/local/google/home/krasin/src/llvm.org/llvm/lib/Linker/IRMover.cpp:1250 #2 run (this=0x7fff6350) at /usr/local/google/home/krasin/src/llvm.org/llvm/lib/Linker/IRMover.cpp:1520 #3 llvm::IRMover::move(llvm::Module&, llvm::ArrayRef, std::function)>, llvm::DenseMap, llvm::detail::DenseMapPair >*, bool) (this=this@entry=0x7fff6a30, Src=..., ValuesToLink=..., AddLazyFor=..., ValIDToTempMDMap=ValIDToTempMDMap@entry=0x0, IsMetadataLinkingPostpass=IsMetadataLinkingPostpass@entry=false) at /usr/local/google/home/krasin/src/llvm.org/llvm/lib/Linker/IRMover.cpp:1654 #4 0x73be433d in allSymbolsReadHook (ApiFile=ApiFile@entry=0x0) at /usr/local/google/home/krasin/src/llvm.org/llvm/tools/gold/gold-plugin.cpp:910 #5 0x73be66ab in all_symbols_read_hook () at /usr/local/google/home/krasin/src/llvm.org/llvm/tools/gold/gold-plugin.cpp:955 #6 0x004d5aef in ?? () #7 0x004d5c24 in ?? () #8 0x00516c65 in ?? () #9 0x00516fca in ?? () #10 0x00404f32 in ?? () #11 0x77313ec5 in __libc_start_main (main=0x404a80, argc=37, argv=0x7fffd708, init=, fini=, rtld_fini=, stack_end=0x7fffd6f8) at libc-start.c:287 #12 0x00405e41 in ?? () This is introduced in http://reviews.llvm.org/rL256003 and the immediate problem is in the line IRMover.cpp:1197 that makes an assumption that CU->getSubprograms() will always return a non-NULL value. This was initially discovered on one of Chromium buildbots, see https://crbug.com/570694#c14 -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25916] New: Missing CFI directive after func epilogue and before ret
https://llvm.org/bugs/show_bug.cgi?id=25916 Bug ID: 25916 Summary: Missing CFI directive after func epilogue and before ret Product: libraries Version: trunk Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: DebugInfo Assignee: unassignedb...@nondot.org Reporter: w...@google.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified Created attachment 15508 --> https://llvm.org/bugs/attachment.cgi?id=15508&action=edit testcase Using the most recent clang (r255910) clang -fsanitize=address ill.cc ASAN_OPTIONS=handle_sigill=1:fast_unwind_on_fatal=0 ./a.out It will catch a SIGILL signal (correct behavior) and then catch SIGSEGV: Program received signal SIGSEGV, Segmentation fault. _Unwind_GetGR (index=16, context=0x77fe5ef0) at ../../../libgcc/unwind-dw2.c:244 244 ../../../libgcc/unwind-dw2.c: No such file or directory. (gdb) bt #0 _Unwind_GetGR (index=16, context=0x77fe5ef0) at ../../../libgcc/unwind-dw2.c:244 #1 _Unwind_GetPtr (index=16, context=0x77fe5ef0) at ../../../libgcc/unwind-dw2.c:255 #2 uw_update_context (context=context@entry=0x77fe5ef0, fs=fs@entry=0x77fe5fe0) at ../../../libgcc/unwind-dw2.c:1523 #3 0x772a3e3e in _Unwind_Backtrace (trace=0x4d14d0 , trace_argument=0x77fe61a0) at ../../../libgcc/unwind.inc:303 #4 0x004d16ec in SlowUnwindStack Assembly: ~/workarea/llvm-r255910/dbuild/bin/clang -fsanitize=address ill.cc -S main: # @main .cfi_startproc # BB#0: # %entry pushq %rbp .Ltmp3: .cfi_def_cfa_offset 16 .Ltmp4: .cfi_offset %rbp, -16 movq%rsp, %rbp .Ltmp5: .cfi_def_cfa_register %rbp subq$16, %rsp movabsq $_Z5deathv, %rax movl%edi, -4(%rbp) movq%rsi, -16(%rbp) movq%rax, %rdi callq __sanitizer_set_death_callback callq __asan_handle_no_return xorl%eax, %eax addq$16, %rsp popq%rbp // After this instruction, cfa register should be changed to rsp again. ".cfi_def_cfa 7, 8" should be inserted after the instruction. ud2 retq .Lfunc_end1: .size main, .Lfunc_end1-main .cfi_endproc If ".cfi_def_cfa 7, 8" is added before ud2 manually, the SEGV will be gone. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25917] New: findNeededSubprograms segfaults on compile units without subprograms
https://llvm.org/bugs/show_bug.cgi?id=25917 Bug ID: 25917 Summary: findNeededSubprograms segfaults on compile units without subprograms Product: libraries Version: trunk Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: Linker Assignee: unassignedb...@nondot.org Reporter: andrew.b.ad...@gmail.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified findNeededSubprograms in IRMover.cpp assumes that the CU->getSubprograms() is not null and dereferences it, but it is null sometimes in my experience. This probably happens when the compile unit has no subprograms. Inserting: if (!CU->getSubprograms()) continue; just before the IRMover.cpp line 1196 fixes it for me -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25917] findNeededSubprograms segfaults on compile units without subprograms
https://llvm.org/bugs/show_bug.cgi?id=25917 Teresa Johnson changed: What|Removed |Added Status|NEW |RESOLVED CC||tejohn...@google.com Resolution|--- |DUPLICATE --- Comment #1 from Teresa Johnson --- *** This bug has been marked as a duplicate of bug 25915 *** -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25912] llc assertion failure with COFF target
https://llvm.org/bugs/show_bug.cgi?id=25912 David Majnemer changed: What|Removed |Added Status|NEW |RESOLVED Component|new bugs|MC Resolution|--- |FIXED Product|new-bugs|libraries --- Comment #15 from David Majnemer --- Fixed in r256226. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25918] New: Misleading altivec error message when using an unsupported element type in C++
https://llvm.org/bugs/show_bug.cgi?id=25918 Bug ID: 25918 Summary: Misleading altivec error message when using an unsupported element type in C++ Product: clang Version: trunk Hardware: PC OS: All Status: NEW Severity: enhancement Priority: P Component: -New Bugs Assignee: unassignedclangb...@nondot.org Reporter: george.burgess...@gmail.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified When using an altivec vector with (what I'd assume is) an unsupported element type, the diagnostic that clang emits is suboptimal: $ cat baderror.cpp int foo() { vector bool a; } $ ~/llvm/llvm-commit/build/release/bin/clang++ -cc1 -faltivec -triple powerpc-unknown-unknown baderror.cpp baderror.cpp:1:25: error: C++ requires a type specifier for all declarations int foo() { vector bool a; } ~~~ ^ 1 error generated. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25919] New: r256105-added assertion fails when LTOing C++ code.
https://llvm.org/bugs/show_bug.cgi?id=25919 Bug ID: 25919 Summary: r256105-added assertion fails when LTOing C++ code. Product: libraries Version: trunk Hardware: PC OS: All Status: NEW Severity: normal Priority: P Component: Core LLVM classes Assignee: unassignedb...@nondot.org Reporter: ahmed.bouga...@gmail.com CC: llvm-bugs@lists.llvm.org Classification: Unclassified Consider: struct A { virtual void a() {} }; void b() { A().a(); } With r256105, this: clang++ -flto a.cpp -O0 fails with: Assertion failed: (M->isMaterialized()), function assertModuleIsMaterialized, file ../lib/IR/Value.cpp, line 324. This is on darwin; coming from analyzeGlobal: * frame #5: 0x0001024d2b9d libLTO.dylib`llvm::Value::assertModuleIsMaterialized(this=0x0001006154f8) const + 125 at Value.cpp:324 frame #6: 0x00010308f855 libLTO.dylib`llvm::Value::uses(this=0x0001006154f8) const + 21 at Value.h:321 frame #7: 0x00010366b0be libLTO.dylib`analyzeGlobalAux(V=0x0001006154f8, GS=0x71803f28, PhiUsers=0x71803e60) + 94 at GlobalStatus.cpp:56 frame #8: 0x00010366b039 libLTO.dylib`llvm::GlobalStatus::analyzeGlobal(V=0x0001006154f8, GS=0x71803f28) + 57 at GlobalStatus.cpp:181 frame #9: 0x000102bf6421 libLTO.dylib`llvm::canBeOmittedFromSymbolTable(GV=0x0001006154f8) + 177 at Analysis.cpp:643 frame #10: 0x0001025269de libLTO.dylib`llvm::LTOModule::addDefinedSymbol() + 574 at LTOModule.cpp:480 frame #11: 0x000102526e4a libLTO.dylib`llvm::LTOModule::addDefinedFunctionSymbol() + 42 at LTOModule.cpp:444 frame #12: 0x000102526e0a libLTO.dylib`llvm::LTOModule::addDefinedFunctionSymbol(this=0x0001006206b0, Sym=0x71804368) + 234 at LTOModule.cpp:439 frame #13: 0x000102523ded libLTO.dylib`llvm::LTOModule::parseSymbols(this=0x0001006206b0) + 749 at LTOModule.cpp:633 frame #14: 0x000102521e28 libLTO.dylib`llvm::LTOModule::makeLTOModule(Buffer=MemoryBufferRef @ 0x71805ca0, options=TargetOptions @ 0x71805ce8, Context=0x000100600880) + 9864 at LTOModule.cpp:262 frame #15: 0x000102522c35 libLTO.dylib`llvm::LTOModule::createInContext() + 437 at LTOModule.cpp:160 frame #16: 0x000102522d08 libLTO.dylib`llvm::LTOModule::createInLocalContext() + 168 at LTOModule.cpp:151 frame #17: 0x00010180349b libLTO.dylib`::lto_module_create_in_local_context() + 155 at lto.cpp:253 -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 25915] rL256003 breaks LTO with debug info
https://llvm.org/bugs/show_bug.cgi?id=25915 Teresa Johnson changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #4 from Teresa Johnson --- Fixed in r256224. -- You are receiving this mail because: You are on the CC list for the bug. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs