- Sep 13, 2022
-
-
Ting Wang authored
Reviewed By: lkail Differential Revision: https://reviews.llvm.org/D133543
-
Craig Topper authored
I believe the result for fp_to_uint_sat is incorrect for this case.
-
Jordan Rupprecht authored
While auxv keys are usually small, e.g. less than 50, they can sometimes be larger, especially on a downstream kernel where a custom auxv entry is intentionally high to avoid conflicting with the standard lower numbers. This test fails on a system with an auxv value bigger than 1000, but instead of putting this test at that value plus one, it looks like 2023 (i.e. `AT_SUN_CAP_HW2`) is another large one out there. Use 2500 as a limit to still have this be a reasonable "small" check but still allow all known auxv keys. Semi-related change: this test case prints the auxv dict at the trace level, but only _after_ the assertion fails, making it not print what the offending value is as the test case aborts. Move it earlier so we can see what the "unreasonable" auxv value is.
-
Yeting Kuo authored
The original code may have incorrect result if there is a masked instruction without policy operand to make us set its policy to TUMU. The patch adds an assertion to catch the instruction. Reviewed By: reames Differential Revision: https://reviews.llvm.org/D133302
-
Fangrui Song authored
-
gonglingqin authored
Differential Revision: https://reviews.llvm.org/D133281
-
Vincent Lee authored
https://reviews.llvm.org/D133729 broke the buildbots because some don't build with both x86 and aarch64 targets. Adding REQUIRES to make sure this test only runs when specifying for both arch.
-
Vincent Lee authored
llvm-lipo crashes when trying to use inputs that contain bitcode asm instructions. This happens when trying to create universal binaries for LLVM with LTO. https://reviews.llvm.org/D118575 is a similar change that ran into this same issue, and I'm mirroring the same change by registering the targets to fix this issue. Reviewed By: alexander-shaposhnikov, keith Differential Revision: https://reviews.llvm.org/D133729
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Nico Weber authored
-
Rob Suderman authored
Fold cases where a tosa.reverse is a splat or reversing a dim of length-1. Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D133144
-
Matt Arsenault authored
-
Lang Hames authored
The ORC runtime include directory was renamed from 'orc' to 'orc_rt' in a85e4aa3. Update includes to match.
-
Jessica Paquette authored
Some compilers (like all the ones I've tried) seem to NVRO the Expected<std::vector<unique_ptr>> but other ones (like some of the bots) seem to not want to. Change the return type to Error and pass in the vector as an output parameter to try and fix things.
-
Greg Clayton authored
Debugging some DWARF5 binaries was causing errors to appear when DWARFExpression::Evaluate was called: error: GetDIE for DIE 0x31 is outside of its CU 0x123450 The issue is in the DWARF expression evaluator. Fixed with this. Differential Revision: https://reviews.llvm.org/D133623 -
Adrian Prantl authored
-
Lang Hames authored
The ORC runtime isn't used by clang -- the prefix was just cargo-culted with the rest of the XRay config when the ORC runtime was introduced. We now want to make parts of it available for clients to link directly, so this seems like a good time to fix the name.
-
Adrian Prantl authored
Unfortunately these options are still not upstream.
-
Adrian Prantl authored
-
Craig Topper authored
-
Aiden Grossman authored
This patch refactors SlotIndex::getInstrDistance to SlotIndex::getApproxInstrDistance to better describe the actual functionality of this function. This patch also adds in some additional comments better documenting the assumptions that this function makes to increase clarity. Based on discussion on the LLVM Discourse: https://discourse.llvm.org/t/odd-behavior-in-slotindex-getinstrdistance/64934/5 Reviewed By: mtrofin, foad Differential Revision: https://reviews.llvm.org/D133386
-
Nico Weber authored
-
Vitaly Buka authored
-
Amara Emerson authored
The bit masking lowering only works for vectors of scalars, so for pointer element types we need to add some casting. Differential Revision: https://reviews.llvm.org/D133672
-
Amara Emerson authored
The mutation the action generates tries to change the input type into the element type of larger vector type. This doesn't work if the larger element type is a vector of pointers since it creates an illegal mutation between scalar and pointer types. Differential Revision: https://reviews.llvm.org/D133671
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Fangrui Song authored
[MinGW] Reject explicit hidden visibility applied to dllexport and hidden/protected applied to dllimport Hidden visibility is incompatible with dllexport. Hidden and protected visibilities are incompatible with dllimport. (PlayStation uses dllexport protected.) When an explicit visibility attribute applies on a dllexport/dllimport declaration, report a Frontend error (Sema does not compute visibility). Reviewed By: mstorsjo Differential Revision: https://reviews.llvm.org/D133266
-
Jessica Paquette authored
Doc builder caught this: ``` File ".../llvm/src/llvm/docs/conf.py", line 271, in process_rst name,description = title.split(' - ', 1) ValueError: not enough values to unpack (expected 2, got 1) ``` -
Arthur Eubanks authored
-
Jessica Paquette authored
This adds llvm-remarkutil. This is intended to be a general tool for doing stuff with/to remark files. This patch gives it the following powers: * `bitstream2yaml` - To convert bitstream remarks to YAML * `yaml2bitstream` - To convert YAML remarks to bitstream remarks These are both implemented as subcommands, like `llvm-remarkutil bitstream2yaml <input_file> -o -` I ran into an issue where I had some bitstream remarks coming from CI, and I wanted to be able to do stuff with them (e.g. visualize them). But then I noticed we didn't have any tooling for doing that, so I decided to write this thing. Being able to output YAML as a start seemed like a good idea, since it would allow people to reuse any tooling they may have written based around YAML remarks. Hopefully it can grow into a more featureful remark utility. :) Currently there are is an outstanding performance issue (see the TODO) with the bitstream2yaml case. I decided that I'd ...
-
Matt Arsenault authored
Somehow DeadMachineInstructionElim is about 3x slower when using it. Hopefully this reverses the compile time regression reported for b5041527.
-
David Majnemer authored
__declspec(safebuffers) is equivalent to __attribute__((no_stack_protector)). This information is recorded in CodeView. While we are here, add support for strict_gs_check.
-
Aart Bik authored
Rationale: For every dynamic memref (memref<?xtype>), the stored size really indicates the capacity and the entry in the memSizes indicates the actual size. This allows us to use memref's as "vectors". Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D133724
-
Greg Clayton authored
Summary: Many times when debugging variables might not be available even though a user can successfully set breakpoints and stops somewhere. Letting the user know will help users fix these kinds of issues and have a better debugging experience. Examples of this include: - enabling -gline-tables-only and being able to set file and line breakpoints and yet see no variables - unable to open object file for DWARF in .o file debugging for darwin targets due to modification time mismatch or not being able to locate the N_OSO file. This patch adds an new API to SBValueList: lldb::SBError lldb::SBValueList::GetError(); object so that if you request a stack frame's variables using SBValueList SBFrame::GetVariables(...), you can get an error the describes why the variables were not available. This patch adds the ability to get an error back when requesting variables from a lldb_private::StackFrame when calling GetVariableList. It also now shows an error in response to "frame variable" if we have debug info and are unable to get varialbes due to an error as mentioned above: (lldb) frame variable error: "a.o" object from the "/tmp/libfoo.a" archive: either the .o file doesn't exist in the archive or the modification time (0x63111541) of the .o file doesn't match Reviewers: labath JDevlieghere aadsm yinghuitan jdoerfert sscalpone Subscribers: Differential Revision: https://reviews.llvm.org/D133164
-
Kazu Hirata authored
I'm planning to deprecate and eventually remove llvm::empty. I thought about replacing llvm::empty(x) with std::empty(x), but it turns out that all uses can be converted to x.empty(). That is, no use requires the ability of std::empty to accept C arrays and std::initializer_list. Differential Revision: https://reviews.llvm.org/D133677
-
YongKang Zhu authored
MachineOperand::getRegMask() returns a pointer to register mask. We should hash the raw content of register mask instead of its pointer. Reviewed By: kyulee Differential Revision: https://reviews.llvm.org/D133637
-
Ben Langmuir authored
This reverts commit d96f5261. Some systems do not support `env -u`.
-
Fangrui Song authored
* Change `Symbol::flags` to a `std::atomic<uint16_t>` * Add `llvm::parallel::threadIndex` as a thread-local non-negative integer * Add `relocsVec` to part.relaDyn and part.relrDyn so that relative relocations can be added without a mutex * Arbitrarily change -z nocombreloc to move relative relocations to the end. Disable parallelism for deterministic output. MIPS and PPC64 use global states for relocation scanning. Keep serial scanning. Speed-up with mimalloc and --threads=8 on an Intel Skylake machine: * clang (Release): 1.27x as fast * clang (Debug): 1.06x as fast * chrome (default): 1.05x as fast * scylladb (default): 1.04x as fast Speed-up with glibc malloc and --threads=16 on a ThunderX2 (AArch64): * clang (Release): 1.31x as fast * scylladb (default): 1.06x as fast Reviewed By: andrewng Differential Revision: https://reviews.llvm.org/D133003
-