- May 24, 2022
-
-
Sotiris Apostolakis authored
This reverts commit a111fb96.
-
Sotiris Apostolakis authored
This patch optimizes the transformation of selects to a branch when the heuristics deemed it profitable. It aggressively sinks eligible instructions to the newly created true/false blocks to prevent their execution on the common path and interleaves dependence slices to maximize ILP. Depends on D120232 Reviewed By: davidxl Differential Revision: https://reviews.llvm.org/D120233
-
Brad Smith authored
The test specifies a CPU arch but not a particular OS. So if run on OpenBSD it acts as if it's an OpenBSD/hexagon system. OpenBSD uses __guard_local instead of __stack_chk_guard so the test will fail. So specify an OS other than OpenBSD fixes the test. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D126265
-
Hyoun Kyu Cho authored
Exposes interface to free up caching data structure in DWARFDebugLine and DWARFUnit for memory management This is minimum changes extracted from https://reviews.llvm.org/D78950. The old patch tried to add LRU eviction of caching data structure. Due to multiple layers of interfaces that users could be using, it was not clear where to put the functionality. While we work out on where to put that functionality, it'll be great to add this minimum interface change so that the user could implement their own memory management. More specifically: * Add a clearLineTable method for DWARFDebugLine which erases the given offset from the LineTableMap. * DWARFDebugContext adds the clearLineTableForUnit method that leverages clearLineTable to remove the object corresponding to a given compile unit, for memory management purposes. When it is referred to again, the line table object will be repopulated. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D90006
-
usama hameed authored
-
usama hameed authored
Added a separate check for unevaluated statements. Updated InfiniteLoopCheck to use new check Differential Revision: https://reviews.llvm.org/D126246
-
usama hameed authored
Differential Revision: https://reviews.llvm.org/D126034
-
Wolfgang Pieb authored
This is a preparatory patch for the MDNode resize functionality. Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D125994
-
Sotiris Apostolakis authored
This patch adds the loop-level heuristics for determining whether branches are more profitable than conditional moves. These heuristics apply to only inner-most loops. Depends on D120231 Reviewed By: davidxl Differential Revision: https://reviews.llvm.org/D120232
-
Sotiris Apostolakis authored
This patch adds the base heuristics for determining whether branches are more profitable than conditional moves. Base heuristics apply to all code apart from inner-most loops. Depends on D122259 Reviewed By: davidxl Differential Revision: https://reviews.llvm.org/D120231
-
Vy Nguyen authored
- fixed inconsistent indents and spaces - prevent extraneous formatting changes in other patches Differential Revision: https://reviews.llvm.org/D126262
-
Peter Klausler authored
The binding names of inner procedures with BIND(C) are not exposed to the loader and should be ignored for potential conflict errors. Differential Revision: https://reviews.llvm.org/D126141
-
Peter Klausler authored
Intrinsic module names are not in the user's namespace, so they are free to declare global names that conflict with intrinsic modules. Differential Revision: https://reviews.llvm.org/D126140
-
Xeonacid authored
Make old JIT ExecutionEngine tests unsupported for RISCV, like many other architectures included. Reviewed By: reames Differential Revision: https://reviews.llvm.org/D126188
-
Peter Klausler authored
The character length value in the derived type component information table entry is already in units of characters, not bytes, so don't divide by the per-character byte size. Differential Revision: https://reviews.llvm.org/D126139
-
Sam Clegg authored
It turns out we were already allocating static address space for TLS data along with the non-TLS static data, but this space was going unused/ignored. With this change, we include the TLS segment in `__wasm_init_memory` (which does the work of loading the passive segments into memory when a module is first loaded). We also set the `__tls_base` global to point to the start of this segment. This means that the runtime can use this static copy of the TLS data for the first/primary thread if it chooses, rather than doing a runtime allocation prior to calling `__wasm_init_tls`. Practically speaking, this will allow emscripten to avoid dynamic allocation of TLS region on the main thread. Differential Revision: https://reviews.llvm.org/D126107
-
Hendrik Greving authored
Fixes a bug preventing moving the loop's metadata to an outer loop's header, which happens if the loop's exit is also the header of an outer loop. Adjusts test for above. Fixes #55416. Differential Revision: https://reviews.llvm.org/D125574
-
Hendrik Greving authored
Adds a test to expose #55416. Differential Revision: https://reviews.llvm.org/D125696
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Vitaly Buka authored
-
Jamie Schmeiser authored
A new hidden option -print-on-crash that prints the IR as it was upon entering the last pass when there is a crash. The IR is saved in its print form before each pass is started and a signal handler is registered. If the compilation crashes, the signal handler will print the saved IR to dbgs(). This option can be modified using -print-module-scope to get the IR for the complete module. Note that this option only works with the new pass manager. Reviewed By: yrouban Differential Revision: https://reviews.llvm.org/D86657
-
Tom Stellard authored
As discussed in https://discourse.llvm.org/t/creating-a-new-repository-for-release-branch-pull-requests/61339 Reviewed By: asl Differential Revision: https://reviews.llvm.org/D125851
-
Alex Brachet authored
utils looks different from the other directory names in the docs, see https://libc.llvm.org/source_layout.html#the-utils-directory Differential revision: https://reviews.llvm.org/D126211
-
NAKAMURA Takumi authored
Fixup for https://reviews.llvm.org/D73044 String literal has an implicit terminator '\0'. This commit adjusts char array to long literal. This causes difference of artifacts between -long-string-literals=true and false. Differential Revision: https://reviews.llvm.org/D126136
-
Jeffrey Tan authored
Previous patch (https://reviews.llvm.org/D126013) added a new "optimized" attribute to DAP stack frame this caused some tests, like lldb-vscode/coreFile/TestVSCode_coreFile.py to fail because the tests explicitly check for all attributes. To fix the test failure I decided to remove this attribute. Differential Revision: https://reviews.llvm.org/D126225
-
NAKAMURA Takumi authored
Differential Revision: https://reviews.llvm.org/D126135
-
Mitch Phillips authored
Currently, llvm-symbolizer doesn't like to parse .debug_info in order to show the line info for global variables. addr2line does this. In the future, I'm looking to migrate AddressSanitizer off of internal metadata over to using debuginfo, and this is predicated on being able to get the line info for global variables. This patch adds the requisite support for getting the line info from the .debug_info section for symbolizing global variables. This only happens when you ask for a global variable to be symbolized as data. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D123538
-
Sotiris Apostolakis authored
This patch implements the actual transformation of selects to branches. It includes only the base transformation without any sinking. Depends on D120230 Reviewed By: davidxl Differential Revision: https://reviews.llvm.org/D122259
-
Qunyan Mangus authored
RAGreedy has two fields of RegisterClassInfo, one called RCI and another RegClassInfo from its base class. RCI is initialized without freezeReservedRegs first, while RegClassInfo does. Therefore, if reserved registers information is changed between last time freezeReservedRegs is called and RAGreedy, it's not picked up by RCI. Instead of having both fields in RAGreedy, remove RCI and use RegClassInfo instead. Also removed is the TRI field which is present in its base class. Reviewed By: MatzeB Differential Revision: https://reviews.llvm.org/D125926
-
Paul Robinson authored
The new test is a copy of the corresponding PS4 test, with the triple etc updated, because there's currently no good way to make one lit test "iterate" with multiple targets.
-
Stella Stamenova authored
The tests actually require the target triple to match the host, rather than just having the host in the list of available targets. This change removes `llvm_has_native_target` and instead uses the `native` feature from the lit configuration. Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D126011
-
Florian Hahn authored
The new tests contain examples where shuffles are free, because indexed fma instructions can be used.
-
Paul Walker authored
-
Alexey Bataev authored
Builds UserIgnore list only once as a SmallDenseSet without rebuilding it between the runs, iterate over gathers instead list of reduction ops, do some checks in the buildTree_rec only if the corresponding containers are not empty.
-
Julian Lettner authored
Differential Revision: https://reviews.llvm.org/D126229
-
LLVM GN Syncbot authored
-
Nikolas Klauser authored
Reviewed By: ldionne, #libc Spies: sstefan1, libcxx-commits Differential Revision: https://reviews.llvm.org/D126167
-