- Aug 19, 2023
-
-
Johannes Doerfert authored
-
Jim Lin authored
All of them have prefix 'X' in DecoderNamespace.
-
YunQiang Su authored
HI/LO registers have been removed in MIPSr6. Save and restore them only for pre-R6. We keep the memory space for the registers so that we can use the same register indexes for r6 and pre-r6. Fixes: #60682 Reviewed By: compnerd Differential Revision: https://reviews.llvm.org/D156283
-
Jim Lin authored
Reviewed By: myhsu Differential Revision: https://reviews.llvm.org/D116993
-
Nathan Ridge authored
Fixes https://github.com/clangd/clangd/issues/1734 Differential Revision: https://reviews.llvm.org/D158249
-
Nathan Ridge authored
The previous behaviour is to try to parse such files, and in some cases assert or hang in components that don't expect these forms of input, like TokenBuffer. Fixes https://github.com/llvm/llvm-project/issues/62090 Differential Revision: https://reviews.llvm.org/D149236
-
Craig Topper authored
This patch focuses on power of 2 bytes up to 2x XLen with and without alignment. Other cases will be handled in future patches. Reviewed By: nitinjohnraj Differential Revision: https://reviews.llvm.org/D157828
-
Nathan Ridge authored
Plus bonus typo fix Differential Revision: https://reviews.llvm.org/D158248
-
Han Shen authored
This CL includes two changes: 1. moved clang backend-warnings test cases from Driver/ to CodeGen/. 2. removed multiple `cd "$(dirname "%t")"` and replaced with `-o %t`. Reviewed By: maskray (Fangrui Song) Differential Revision: https://reviews.llvm.org/D157565
-
ziqingluo-90 authored
Refactor the getFixIts function for better readability. Reviewed by: NoQ (Artem Dergachev), t-rasmud (Rashmi Mudduluru) Differential revision: https://reviews.llvm.org/D156762
-
Erick Velez authored
Add records, serialization for global function templates and their specializations Depends on D157350 Reviewed By: dang Differential Revision: https://reviews.llvm.org/D157579
-
Craig Topper authored
RISC-V doesn't have flag registers, we need to implement these with add/sub and compares. Remove the untested legalization for the signed versions. We can add it back when we write tests. Reviewed By: nitinjohnraj Differential Revision: https://reviews.llvm.org/D157772
-
Congcong Cai authored
cast PredefinedExpr such as `__func__` to const char* should be accpetted. Reviewed By: PiotrZSL Differential Revision: https://reviews.llvm.org/D158244
-
Augusto Noronha authored
Thread sanitizer reports a data race in Process.cpp in the usage of m_process_input_reader. Fix this data race by introducing a mutex guarding the access to this variable. Differential Revision: https://reviews.llvm.org/D157648
-
Augusto Noronha authored
ThreadSanitizer reports the following issue: ``` Write of size 8 at 0x00010a70abb0 by thread T3 (mutexes: write M0): #0 lldb_private::ThreadList::Update(lldb_private::ThreadList&) ThreadList.cpp:741 (liblldb.18.0.0git.dylib:arm64+0x5dedf4) (BuildId: 9bced2aafa373580ae9d750d9cf79a8f32000000200000000100000000000e00) #1 lldb_private::Process::UpdateThreadListIfNeeded() Process.cpp:1212 (liblldb.18.0.0git.dylib:arm64+0x53bbec) (BuildId: 9bced2aafa373580ae9d750d9cf79a8f32000000200000000100000000000e00) Previous read of size 8 at 0x00010a70abb0 by main thread (mutexes: write M1): #0 lldb_private::ThreadList::GetMutex() const ThreadList.cpp:785 (liblldb.18.0.0git.dylib:arm64+0x5df138) (BuildId: 9bced2aafa373580ae9d750d9cf79a8f32000000200000000100000000000e00) #1 lldb_private::ThreadList::DidResume() ThreadList.cpp:656 (liblldb.18.0.0git.dylib:arm64+0x5de5c0) (BuildId: 9bced2aafa373580ae9d750d9cf79a8f32000000200000000100000000000e00) #2 lldb_private::Process::PrivateResume() Process.cpp:3130 (liblldb.18.0.0git.dylib:arm64+0x53cd7c) (BuildId: 9bced2aafa373580ae9d750d9cf79a8f32000000200000000100000000000e00) ``` Fix this by only using the mutex in ThreadList and removing the one in process entirely. Differential Revision: https://reviews.llvm.org/D158034 -
Johannes Doerfert authored
AAIndirectCallInfo will collect information and specialize indirect call sites. It is similar to our IndirectCallPromotion but runs as part of the Attributor (so with assumed callee information). It also expands more calls and let's the rest of the pipeline figure out what is UB, for now. We use existing call promotion logic to improve the result, otherwise we rely on the (implicit) function pointer cast. This effectively "fixes" #60327 as it will undo the type punning early enough for the inliner to work with the (now specialized, thus direct) call. Fixes: https://github.com/llvm/llvm-project/issues/60327
-
Jason Molenda authored
To work around an address sanitizer issue on macOS where environment_check prints a spurious stderr msg when executing, environment_check(41292,0x113e7a600) malloc: nano zone abandoned due to inability to preallocate reserved vm space. And TestClient::Continue() which intends to continue to exit instead sees the stderr output streamed, and doesn't handle that unexpected output. Easiest to disable stdin/stdout for this one test case to avoid this corner case issue with this TestClient.cpp way of expecting a stop reply packet after continuing. Differential Revision: https://reviews.llvm.org/D158237
-
Eugene Zhulenev authored
Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D158212
-
Fangrui Song authored
-
Fangrui Song authored
Obsoleted by target=
-
Fangrui Song authored
Similar to e6e43629
-
Paul Kirth authored
This changes the definition if isSectionBitcode to only be valid for the .llvm.lto section, since this API is only called from LTO, and the .llvmbc section was not intended to be used for LTO. This allows the gold plugin to keep its existing behavior without introducing any significant changes. Reviewed By: MaskRay, nikic Differential Revision: https://reviews.llvm.org/D152973
-
Paul Kirth authored
This patch adds support to lld for --fat-lto-objects. We add a new --fat-lto-objects option to LLD, and slightly change how it chooses input files in the driver when the option is set. Fat LTO objects contain both LTO compatible IR, as well as generated object code. This allows users to defer the choice of whether to use LTO or not to link-time. This is a feature available in GCC for some time, and makes the existing -ffat-lto-objects option functional in the same way as GCC's. If the --fat-lto-objects option is passed to LLD and the input files are fat object files, then the linker will chose the LTO compatible bitcode sections embedded within the fat object and link them together using LTO. Otherwise, standard object file linking is done using the assembly section in the object files. The previous version of this patch had a missing `REQUIRES: x86` line in `fatlto.invalid.s`. Additionally, it was reported that this patch caused a test failure in `export-dynamic-symbols.s`, however, 29112a99 disabled the `export-dynamic-symbols.s` test on Windows due to a quotation difference between platforms, unrelated to this patch. Original RFC: https://discourse.llvm.org/t/rfc-ffat-lto-objects-support/63977 Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D146778
-
Jonas Devlieghere authored
Shorten "DWARF Extensions supported by LLDB" to just "DWARF Extension".
-
Jason Molenda authored
The mach exception data may not be doubleword aligned when we receive it. We use memcpy to align it later in this method when we save the data, but for printing the value at the top, we need to do the same or ubsan can trigger when LOG_EXCEPTIONS is enabled in debugserver. Differential Revision: https://reviews.llvm.org/D158312
-
Jason Molenda authored
This reverts commit b10c2f84. Need to add the phabracator line to the message.
-
Jason Molenda authored
The mach exception data may not be doubleword aligned when we receive it. We use memcpy to align it later in this method when we save the data, but for printing the value at the top, we need to do the same or ubsan can trigger when LOG_EXCEPTIONS is enabled in debugserver.
-
Med Ismail Bennani authored
This patch fixes TestSaveCrashlog.py failure introduces by eef5eadb , which restricts the number of positional argument for the output file to 1. I expected to get the output file but `argparse` puts the object in a list (even by constrained to a singled positional argument). Signed-off-by:
Med Ismail Bennani <ismail@bennani.ma>
-
Joseph Huber authored
The linker wrapper runs LTO internally, so it needs to know the optimization level the user requested, if any. Previously this was only done in `-foffload-lto` mode as we were assuming that this would enble LTO. However, AMDGPU always performs LTO, and it's possible to run clang on object files to link without passing this flag. So we should just respect it always. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D158298
-
Evan Wilde authored
This patch gets clang-6 building with LLDB. The move from makeArrayRef to deduction guides in 984b800a is tripping up clang-6 on Ubuntu 18.04. Related to issue #64782.
-
Fangrui Song authored
assert is more appropriate here and fixes `runtime error: execution reached an unreachable program point` in a -DLLVM_USE_SANITIZER=Undefined build (-fno-sanitize-recover=all causes llc to exit instead of crash (report_fatal_error)) when testing MachineVerifier/test_g_assert_[sz]ext.mir.
-
Owen Pan authored
Fixes #64818.
-
Martin Storsjö authored
-
Jonas Devlieghere authored
Make it more obvious that these are project ideas rather than say ongoing projects.
-
Reid Kleckner authored
Move WebAssemblyUtilities from Utils to the CodeGen library. It primarily deals in MIR layer types, so it really lives in the CodeGen library. Move a variety of other things around to try create better separation. See issue #64166 for more info on layering. Move llvm/include/CodeGen/WasmAddressSpaces.h back to llvm/lib/Target/WebAssembly/Utils. Differential Revision: https://reviews.llvm.org/D156472
-
Jonas Devlieghere authored
The current "Continuous Integration" is pretty scarce. All we really need is a link to buildbot and GreenDragon. Move this under testing.
-
Erick Velez authored
Serialize global C++ variable templates and specializations. Depends on D157076 Reviewed By: dang Differential Revision: https://reviews.llvm.org/D157350
-
Jonas Devlieghere authored
-
Alexey Bataev authored
It improves shuffle instructions estimation and improves vectorization outcome. Differential Revision: https://reviews.llvm.org/D157425
-
Jonas Devlieghere authored
When processing multiple architectures in parallel, we need to protect access to stdio with a mutex. We already have a mutex for that purpose, but it was only used in the DWARFLinker. This patch protects writes to stdio in driver.
-