- Mar 01, 2024
-
-
Jason Molenda authored
Pavel added an extension to lldb's gdb remote serial protocol that allows the debug stub to append an error message (ascii hex encoded) after an error response packet Exx. This was added in 2017 in https://reviews.llvm.org/D34945 . lldb sends the QErrorStringInPacketSupported packet and then the remote stub may add these error strings. debugserver has two bugs in its use of extended error messages: the vAttach family would send the extended error string without checking if the mode had been enabled. And qLaunchSuccess would not properly format its error response packet (missing the hex digits, did not asciihex encode the string). There is also a bug in the HandlePacket_D (detach) packet where the error packets did not include hex digits, but this one does not append an error string. I'm adding a new RNBRemote::SendErrorPacket() and routing all error packet returns though this one method. It takes an optional second string which is the longer error message; it now handles appending it to the Exx response or not, depending on the QErrorStringInPacketSupported state. I updated all packets to send their errors via this method.
-
Wang Pengcheng authored
According to https://riscv-optimization-guide-riseproject-c94355ae3e6872252baa952524.gitlab.io/riscv-optimization-guide.html: > The v0 register defined by the RISC-V vector extension is special in > that it can be used both as a general purpose vector register and also > as a mask register. As a preference, use registers other than v0 for > non-mask values. Otherwise data will have to be moved out of v0 when a > mask is required in an operation. v0 may be used when all other > registers are in use, and using v0 would avoid spilling register state > to memory. And using V0 register may stall masking pipeline and stop chaining for some microarchitectures. So we should try to not use V0 and register groups contained it as much as possible. We achieve this via moving V0 to the end of RA order.
-
Chelsea Cassanova authored
-
jameshu15869 authored
Currently, `libc` fails when building on redhat because the triple format uses `redhat` instead of `linux` (The same problem as openSUSE). This PR changes `libc` to accept `redhat` as a valid Linux triple. --------- Co-authored-by:Joseph Huber <huberjn@outlook.com>
-
Alexander M authored
This reverts commit 3434472e. Closes #43097.
-
lntue authored
-
David CARLIER authored
SetThreadDescription symbol needs to be dynamically loaded before usage. Then using a wide string buffer, since we re using a null terminated string, we can use MultiByteToWideChar -1 as 4th argument to finally set the thread name. Previously `SetThreadDescription` was called directly causing crash. It was reverted in dd3aa26f
-
Kirill Stoimenov authored
-
Jason Molenda authored
This reverts commit 9a12b0a6. TestAddressMasks fails its first test on lldb-x86_64-debian, lldb-arm-ubuntu, lldb-aarch64-ubuntu bots. Reverting while investigating.
-
David CARLIER authored
-
Jason Molenda authored
I'm reviving a patch from phabracator, https://reviews.llvm.org/D155905 which was approved but I wasn't thrilled with all the API I was adding to SBProcess for all of the address mask types / memory regions. In this update, I added enums to control type address mask type (code, data, any) and address space specifiers (low, high, all) with defaulted arguments for the most common case. This patch is also fixing a bug in the "addressable bits to address mask" calculation I added in AddressableBits::SetProcessMasks. If lldb were told that 64 bits are valid for addressing, this method would overflow the calculation and set an invalid mask. Added tests to check this specific bug while I was adding these APIs. rdar://123530562
-
Yinying Li authored
Continuous efforts #83357. Previously reverted #83377.
-
Felix (Ting Wang) authored
Supports TLS local-dynamic on AIX, generates below sequence of code: ``` .tc foo[TC],foo[TL]@ld # Variable offset, ld relocation specifier .tc mh[TC],mh[TC]@ml # Module handle for the caller lwz 3,mh[TC]\(2\) $$ For 64-bit: ld 3,mh[TC]\(2\) bla .__tls_get_mod # Modifies r0,r3,r4,r5,r11,lr,cr0 #r3 = &TLS for module lwz 4,foo[TC]\(2\) $$ For 64-bit: ld 4,foo[TC]\(2\) add 5,3,4 # Compute &foo .rename mh[TC], "\_$TLSML" # Symbol for the module handle must have the name "_$TLSML" ``` --------- Co-authored-by:
tingwang <tingwang@tingwangs-MBP.lan> Co-authored-by:
tingwang <tingwang@tingwangs-MacBook-Pro.local>
-
ZijunZhaoCCK authored
[libc++] Set feature test macros __cpp_lib_ranges_contains and__cpp_lib_ranges_starts_ends_with (#81816) ranges::contains: fdd089b5 ranges::starts_with: 20517557 ranges::ends_with: 0218ea4a Co-authored-by:
Louis Dionne <ldionne.2@gmail.com>
-
Kai Luo authored
When expand `select_cc` in finalize-isel, we should not generate `isel` for targets not feature it.
-
Mircea Trofin authored
Simpler code, compared to tracking state of 2 variables and the ambiguity of "0" CountValue (is it 0 or is it invalid?)
-
Mehdi Amini authored
Windows folds to 1.01563 and linux to 1.01562, let's just check the prefix here.
-
Florian Mayer authored
-
Andrei Homescu authored
Don't use multiple tagged pages at the beginning of an allocation, since it prevents using such allocations for memrefs, and mappings aren't reused anyway since Trusty uses MapAllocatorNoCache. Upstreamed from https://r.android.com/2537251 . Co-authored-by:
Marco Nelissen <marcone@google.com>
-
Mehdi Amini authored
Reverts llvm/llvm-project#83377 The test does not pass on the bot.
-
LLVM GN Syncbot authored
-
Sumanth Gundapaneni authored
Inspect a basic block and if its single basic block loop with a small number of instructions, set the Loop Alignment to 32 bytes. This will avoid the cache line break in the first packet of loop which will cause a stall per each execution of loop.
-
Matthias Braun authored
Fix race condition when multiple instances of `llvm-progen` read from the same inputs.
-
Slava Zakharin authored
For `LDBL_MANT_DIG == 113` targets the REAL(16) versions of F18 runtime APIs can stay and should better stay in FortranRuntime. This way, no additional linking actions are required, because glibc provides all that is needed. I thought I would isolate all REAL(16) implementations (both via `__float128` and `long double`) into Float128Math library, but that was a bad idea. This should fix aarch64 buildbots failing gfortran tests.
-
Leon Clark authored
Remove LSH transform and restore previous lowering. Fixes conformance issue in [77615](https://github.com/llvm/llvm-project/pull/77615 ) where OpenCL integer_ops tests fail for integer_clz. Co-authored-by:
Leon Clark <leoclark@amd.com>
-
Paul Kirth authored
Many profitable optimizations cannot be performed at -Oz, due to unrotated loops. While this is worse for size (minimally), many of the optimizations significantly reduce code size, such as memcpy optimizations and other patterns found by loop idiom recognition. Related discussion can be found in issue #50308. This patch adds an experimental, backend-only flag to allow loop header duplication, regardless of the optimization level. Downstream consumers can experiment with this flag, and if it is profitable, we can adjust the compiler's defaults accordingly, and expose any useful frontend flags to opt into the new behavior.
-
Mircea Trofin authored
-
Michael Buch authored
Layout information for a record gets stored in the `ClangASTImporter` associated with the `DWARFASTParserClang` that originally parsed the record. LLDB sometimes moves clang types from one AST to another (in the reproducer the origin AST was a precompiled-header and the destination was the AST backing the executable). When clang then asks LLDB to `layoutRecordType`, it will do so with the help of the `ClangASTImporter` the type is associated with. If the type's origin is actually in a different LLDB module (and thus a different `DWARFASTParserClang` was used to set its layout info), we won't find the layout info in our local `ClangASTImporter`. In the reproducer this meant we would drop the alignment info of the origin type and misread a variable's contents with `frame var` and `expr`. There is logic in `ClangASTSource::layoutRecordType` to import an origin's layout info. This patch re-uses that infrastructure to import an origin's layout from one `ClangASTImporter` instance to another. rdar://123274144
-
Reid Kleckner authored
This seemed like relevant information to include in the code of conduct.
-
Michael Buch authored
This patch moves the logic for copying the layout info of a `RecordDecl`s origin into a target AST. A follow-up patch re-uses the logic from within the `ClangASTImporter`, so the natural choice was to move it there.
-
Teresa Johnson authored
The test added by PR81322 didn't actually check the coldness of the attributes being matched on the IR. Add that checking.
-
Aiden Grossman authored
This reverts commit cff36bb1. This patch was causing build failures in certain configurations.
-
Mehdi Amini authored
This reverts commit c66f2d0c. The bot is broken.
-
Shubham Sandeep Rastogi authored
The timeout for this test was set to 1.0s which is very low, it should be a default of 10s and be increased by a factor of 10 if ASAN is enabled. This will help reduce the falkiness of the test, especially in ASAN builds.
-
Fangrui Song authored
_LIBCPP_ASSERT_SHIM used by the -fno-exceptions and LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS=on configuration needs _LIBCPP_ASSERT from <__assert>.
-
Peter Klausler authored
Add the [[maybe_unused]] attribute to a variable in lib/Lower/OpenMP/OpenMP.cpp to avoid a (possibly bogus) unused variable warning when building with GCC 9.3.0.
-
Guillaume Chatelet authored
Umbrella bug #83182
-
Piotr Zegar authored
Instance of DenseMap were copied into local variable, and as a result reference to string stored in that local variable were returned from function. At the end fix-it were applied with already destroyed string causing some non utf-8 characters to be printed. Related to #80541
-
Aiden Grossman authored
This patch adds a std::string_view conversion to SmallString which we've recently found a use for downstream in a project that is using c++ standard library IO.
-
Guillaume Chatelet authored
Umbrella bug #83182
-