[llvm-bugs] [Bug 42940] [MemorySSA] Assertion failed: "Incorrect incoming access into phi."
https://bugs.llvm.org/show_bug.cgi?id=42940 Jonas Paulsson changed: What|Removed |Added Resolution|FIXED |--- Status|RESOLVED|REOPENED --- Comment #8 from Jonas Paulsson --- Looks like there are more problems with this... Reduced two fresh test cases. -- You are receiving this mail because: You are on the CC list for the bug.___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 43107] New: missed opt: function argument attribute propagation
https://bugs.llvm.org/show_bug.cgi?id=43107 Bug ID: 43107 Summary: missed opt: function argument attribute propagation Product: libraries Version: trunk Hardware: PC OS: All Status: NEW Severity: enhancement Priority: P Component: Scalar Optimizations Assignee: unassignedb...@nondot.org Reporter: gonzalob...@gmail.com CC: llvm-bugs@lists.llvm.org See (https://llvm.godbolt.org/z/QJIvwX). This LLVM-IR: define void @bar(i32* %x) local_unnamed_addr #0 { tail call void @foo(i32* %x) ret void } declare void @foo(i32* noalias align 4 dereferenceable(4)) local_unnamed_addr #0 attributes #0 = { nounwind nonlazybind } is not optimized further by `opt`, but I'd expect the definition of `bar` to be optimized to: define void @bar(i32* noalias align 4 dereferenceable(4) %x) local_unnamed_addr #0 -- You are receiving this mail because: You are on the CC list for the bug.___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 43108] New: Add default include path and link libraries.
https://bugs.llvm.org/show_bug.cgi?id=43108 Bug ID: 43108 Summary: Add default include path and link libraries. Product: parallel STL Version: unspecified Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P Component: New Assignee: ldio...@apple.com Reporter: alexe...@xiphos.de CC: llvm-bugs@lists.llvm.org Created attachment 22424 --> https://bugs.llvm.org/attachment.cgi?id=22424&action=edit Build instructions for the LLVM toolchain. When using a complete LLVM toolkit with ParallelSTL and TBB backend, you have to add the include directory (always) and tbb library (when std::execution::par is used) manually. Since it is part of the standard library now, the include path should not be added manually. The '-ltbb' part is debatable and I totally understand why it can be a bad idea to do it automatically. Here is a minimal complete viable example: // main.cpp #include #include #include #include #include int main() { std::mutex mutex; std::vector v = { 0, 1, 2, 3, 4 }; std::for_each(std::execution::par, v.begin(), v.end(), [&](auto i) { std::lock_guard lock(mutex); std::cout << i << std::endl; }); } When compiled with 'clang++ main.cpp', the error is: In file included from main.cpp:2: In file included from /opt/llvm/bin/../include/c++/v1/algorithm:643: /opt/llvm/bin/../include/c++/v1/memory:5594:13: fatal error: '__pstl_memory' file not found # include <__pstl_memory> ^~~ 1 error generated. When compiled with 'clang++ -I/opt/llvm/include main.cpp', the error is: ld.lld: error: undefined symbol: tbb::interface7::internal::isolate_within_arena(tbb::interface7::internal::delegate_base&, long) ... It only works when compiled with 'clang++ -I/opt/llvm/include main.cpp -ltbb'. Build instructions for the LLVM toolchain (git commit 918246788) used to test it in WSL (Ubuntu 18.04.3 LTS) are attached to this bug report. -- You are receiving this mail because: You are on the CC list for the bug.___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] Issue 16758 in oss-fuzz: llvm:clang-format-fuzzer: Null-dereference READ in clang::format::TokenAnnotator::splitPenalty
Status: New Owner: CC: k...@google.com, masc...@google.com, jdevlieg...@apple.com, igm...@gmail.com, mit...@google.com, bigchees...@gmail.com, eney...@google.com, llvm-b...@lists.llvm.org, j...@chromium.org, v...@apple.com, mitchphi...@outlook.com, xpl...@gmail.com, akils...@apple.com Labels: ClusterFuzz Stability-Memory-AddressSanitizer Reproducible Engine-libfuzzer OS-Linux Proj-llvm Reported-2019-08-25 Type: Bug New issue 16758 by ClusterFuzz-External: llvm:clang-format-fuzzer: Null-dereference READ in clang::format::TokenAnnotator::splitPenalty https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16758 Detailed Report: https://oss-fuzz.com/testcase?key=5646479716253696 Project: llvm Fuzzing Engine: libFuzzer Fuzz Target: clang-format-fuzzer Job Type: libfuzzer_asan_llvm Platform Id: linux Crash Type: Null-dereference READ Crash Address: 0x0050 Crash State: clang::format::TokenAnnotator::splitPenalty clang::format::TokenAnnotator::calculateFormattingInformation clang::format::Formatter::analyze Sanitizer: address (ASAN) Regressed: https://oss-fuzz.com/revisions?job=libfuzzer_asan_llvm&range=201709130450:201709140449 Reproducer Testcase: https://oss-fuzz.com/download?testcase_id=5646479716253696 Issue filed automatically. See https://google.github.io/oss-fuzz/advanced-topics/reproducing for instructions to reproduce this bug locally. -- You received this message because: 1. You were specifically CC'd on the issue You may adjust your notification preferences at: https://bugs.chromium.org/hosting/settings Reply to this email to add a comment. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] Issue 14613 in oss-fuzz: llvm/clang-fuzzer: Stack-overflow in clang::DeclContext::lookup
Updates: Labels: ClusterFuzz-Verified Status: Verified Comment #3 on issue 14613 by ClusterFuzz-External: llvm/clang-fuzzer: Stack-overflow in clang::DeclContext::lookup https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14613#c3 ClusterFuzz testcase 5759648210092032 is verified as fixed in https://oss-fuzz.com/revisions?job=libfuzzer_asan_llvm&range=201908240322:201908250319 If this is incorrect, please file a bug on https://github.com/google/oss-fuzz/issues/new -- You received this message because: 1. You were specifically CC'd on the issue You may adjust your notification preferences at: https://bugs.chromium.org/hosting/settings Reply to this email to add a comment. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] [Bug 43110] New: Detecting symbol conflicts between static libraries
https://bugs.llvm.org/show_bug.cgi?id=43110 Bug ID: 43110 Summary: Detecting symbol conflicts between static libraries Product: lld Version: unspecified Hardware: All OS: Linux Status: NEW Severity: enhancement Priority: P Component: ELF Assignee: unassignedb...@nondot.org Reporter: ori...@gmx.fr CC: llvm-bugs@lists.llvm.org, peter.sm...@linaro.org Created attachment 22425 --> https://bugs.llvm.org/attachment.cgi?id=22425&action=edit --uniqdefs for LLD 8.0.1 Consider an executable built from multiple static libraries. The linker ignores those objects in the static libraries that do not contribute any needed symbols. In my experience at Yandex this behavior turned out to be brittle and error prone. The most common source of errors is when one open source project copies (parts of) another open source project into its code base (and alters it, or the original project diverges): if an application depends on both projects, the linker selects one copy and silently ignores the other which leads to unexpected behavior at runtime. The second most common source are small object files that define just a couple of generically named symbols. One solution to prevent such errors is to link all static libraries with --whole-archive. However, it is difficult to introduce this into the code base focused on static linking which expects that unneeded objects are not included (e.g. when they require the application to supply additional symbols to be used by the optional object files), and it is costly (either the binary size increases, or you relink without --whole-archive and the time doubles, or you link in parallel and the memory doubles). I would like to propose another solution that seems generally useful and recommended for all statically built projects. We may want to make sure that a strongly defined symbol has a single definition across all linker inputs (including unused objects in static libraries — everything else is handled by the default -z nomuldefs), but then it would become difficult to intentionally shadow library symbols by custom overrides (and it is more difficult to implement in LLD), so we want to ensure the single definition across all static libraries (which is almost as good if not better). In order to do that we visit all inputs to build the symbol table as usual, and then we visit libraries again and add those library objects that define symbols that are already strongly defined to cause multiple definitions error. (This can be implemented with essentially zero overhead when there are no multiple definitions.) One consequence is that it becomes an error to list the same library twice on the command line (since it is surprisingly difficult to properly deduplicate input files), so just like --no-whole-archive the new option (currently called --uniqdefs) needs a counterpart (--no-uniqdefs) to delimit the controlled list of libraries from the rest. -- You are receiving this mail because: You are on the CC list for the bug.___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
[llvm-bugs] Issue 16769 in oss-fuzz: llvm:clang-fuzzer: Stack-overflow in clang::FunctionProtoType::getExtProtoInfo
Status: New Owner: CC: k...@google.com, masc...@google.com, jdevlieg...@apple.com, igm...@gmail.com, mit...@google.com, bigchees...@gmail.com, eney...@google.com, llvm-b...@lists.llvm.org, j...@chromium.org, v...@apple.com, mitchphi...@outlook.com, xpl...@gmail.com, akils...@apple.com Labels: ClusterFuzz Stability-Memory-AddressSanitizer Reproducible Engine-libfuzzer OS-Linux Proj-llvm Reported-2019-08-26 Type: Bug New issue 16769 by ClusterFuzz-External: llvm:clang-fuzzer: Stack-overflow in clang::FunctionProtoType::getExtProtoInfo https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16769 Detailed Report: https://oss-fuzz.com/testcase?key=5631275213258752 Project: llvm Fuzzing Engine: libFuzzer Fuzz Target: clang-fuzzer Job Type: libfuzzer_asan_llvm Platform Id: linux Crash Type: Stack-overflow Crash Address: 0x7ffd1b28fef8 Crash State: clang::FunctionProtoType::getExtProtoInfo clang::FunctionProtoType::Profile llvm::ContextualFoldingSetclang::ASTContext&>::NodeEq Sanitizer: address (ASAN) Regressed: https://oss-fuzz.com/revisions?job=libfuzzer_asan_llvm&range=201807110801:201807230239 Reproducer Testcase: https://oss-fuzz.com/download?testcase_id=5631275213258752 Issue filed automatically. See https://google.github.io/oss-fuzz/advanced-topics/reproducing for instructions to reproduce this bug locally. -- You received this message because: 1. You were specifically CC'd on the issue You may adjust your notification preferences at: https://bugs.chromium.org/hosting/settings Reply to this email to add a comment. ___ llvm-bugs mailing list llvm-bugs@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs