- Jun 30, 2023
-
-
Johannes Doerfert authored
At some point we alloed the CGSCC traversal to look at the entire module slice (see definition below). However, we don't allow that anymore, mostly for compile time and complexity reasons. Consequently, there is no need to build the ModuleSlice as we can replacve it with the SCC wherever it was still used.
-
Johannes Doerfert authored
If the IR has a boolean attribute, or the function is not IPO amendable, we can avoid creating AAs that would just be forced into a trivial fixpoint anyway. Since we check boolean IR attributes via `AA::hasAssumedIRAttr`, we don't need AAs even if they would be fixed optimistic right away. The only change is in the dependency graph ordering as we move AAs around to simplify the code flow. There is no reason for the order we seed AAs, so this order is just as fine.
-
Galina Kistanova authored
-
Amir Ayupov authored
Reviewed By: #bolt, rafauler Differential Revision: https://reviews.llvm.org/D154115
-
Carlos Alberto Enciso authored
Explicitly inserting undef is overly defensive. Any values computed nside the loop that are referenced by dbg.values should naturally become undef when the loop is deleted, and all other values that are loop invariant must be preserved. Reviewed By: scott.linder Differential Revision: https://reviews.llvm.org/D153539
-
Freddy Ye authored
The missing info is gathered from X86.td. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D154181
-
Amir Aupov authored
This reverts commit f0b45fba. The stack broke https://lab.llvm.org/buildbot/#/builders/252.
-
Amir Aupov authored
This reverts commit 8f7c53ef. The stack broke https://lab.llvm.org/buildbot/#/builders/252.
-
Aart Bik authored
This revision fixes a typo, where printIntegerSet() was used where it should have been parseIntegerSet().It also removes a dangling getDimsAndSymbolSSAIds() declaration that is never used. Differential Revision: https://reviews.llvm.org/D154179
-
Arthur Eubanks authored
This reverts commit fcd58ea5. Causes crashes, see comments on D154114.
-
Ian Douglas Scott authored
Previously when targeting 68020+, instruction selection attempted to emit a 32-bit register-register multiplication, but failed at instruction selection. With this, it succeeds. Differential Revision: https://reviews.llvm.org/D152120
-
Arthur Eubanks authored
-
Arthur Eubanks authored
-
Arthur Eubanks authored
This reverts commit a699921b. Seems to cause miscompiles (https://crbug.com/1459232), following up with author.
-
Craig Topper authored
These extensions don't contain any instructions on their own, they are just aliases for a set of extensions. We should set the preprocessor define anytime all the sub-extensions are supported. Reviewed By: kito-cheng, eopXD Differential Revision: https://reviews.llvm.org/D154171
-
Ben Shi authored
Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D153326
-
V Donaldson authored
Remove kind=10 test variant, which is not universally supported.
-
wanglei authored
[LoongArch] Reuse LoongArchRegWithSubRegs class to shorten some code in LoongArchRegisterInfo.td. NFC
-
wangpc authored
Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D153940
-
wangpc authored
Make sure there is no single line for '{' to be consistent with other codes. `InvalidIndex` is removed since it's unused now. And comments are updated. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D153939 -
Amir Ayupov authored
This reverts commit 02c3724d. This change breaks instrumented Clang: https://lab.llvm.org/buildbot/#/builders/252/builds/2700
-
Amir Ayupov authored
This reverts commit ad4e0770. Breaks BOLT upstream testing: https://lab.llvm.org/buildbot/#/builders/244/builds/13736
-
V Donaldson authored
-
Jason Molenda authored
the list of generic registers is meant to include LLDB_REGNUM_GENERIC_FLAGS but it copy & pasted the name "fp". rdar://100857252
-
Johannes Doerfert authored
The bots reported that we changed the IR w/o reporting it. The reason was that internalization was not reported as changed. Forwarding the result solves the problem. Test coverage via llvm/test/Transforms/Attributor/reduced/openmp_opt_constant_type_crash.ll
-
Fangrui Song authored
Commit d6223a24 introduced an ld64 workaround that disables local relocations for many pointer-sized relocations (e.g. relocations referencing `__DATA,__literal*`). ld64 has been fixed long ago (2015). Drop this workaround so that the behavior matches x86-64. Reviewed By: pete Differential Revision: https://reviews.llvm.org/D152831
-
Jason Molenda authored
ObjectFileMachO::SetLoadAddress() should allow for a DATA segment that has no file content to be slid in the vmaddr, it is valid to have such a section. Differential Revision: https://reviews.llvm.org/D154037 rdar://99744343
-
V Donaldson authored
-
Ting Wang authored
Differential Revision: https://reviews.llvm.org/D152339 Reviewed By: qiucf
-
Ting Wang authored
[PowerPC][NFC] expose issue on absol-jump-table-enabled.ll (relocation-model=pic + ppc-use-absolute-jumptables) Differential Revision: https://reviews.llvm.org/D154047
-
Han-Kuan Chen authored
Differential Revision: https://reviews.llvm.org/D154114
-
Jason Molenda authored
A command to dump the Target's SectionLoadList, to debug possible issues with the table. Differential Revision: https://reviews.llvm.org/D154169
-
V Donaldson authored
Implement - IEEE_CLASS - IEEE_COPY_SIGN - IEEE_GET_ROUNDING_MODE - IEEE_IS_FINITE - IEEE_IS_NAN - IEEE_IS_NEGATIVE - IEEE_IS_NORMAL - IEEE_SET_ROUNDING_MODE - IEEE_SIGNBIT - IEEE_SUPPORT_ROUNDING - IEEE_UNORDERED - IEEE_VALUE for all REAL kinds (2, 3, 4, 8, 10, 16) where applicable.
-
Philip Reames authored
These used a different naming scheme than the rest of the file. The base class itself isn't too confusing - it's just a TA suffix vs the usual unsuffixed. However, the multiclass having a TA suffix while defining all three of TA, TU, and MASK was rather confusing.
-
Shafik Yaghmour authored
When attempting to decide if in C++17 a type template for class template argument deduction and the code is ill-formed the condition to break is checking the current token is an identifier when it should be checking if the next token is not ::. This fixes: https://github.com/llvm/llvm-project/issues/57495 https://github.com/llvm/llvm-project/issues/63052 Differential Revision: https://reviews.llvm.org/D134334
-
Ian Anderson authored
Some modules export modules that they don't import (i.e. that their header doesn't directly include). That sometimes works when the exported submodule is in the same module, but when the `std` mega module is broken up (D144322), some of the exports stop working. Make the exports and includes consistent, either by adding includes for the exports, or by removing exports for missing includes. The `concepts.equality_comparable` export in `std.iterator.__iterator.concepts` isn't doing anything because 1) it's resolved as `std.iterator.__iterator.concepts.equality_comparable` and 2) there's a `__concepts` submodule in between `std.concepts` and `equality_comparable`. Fix it to be `std.concepts.__concepts.equality_comparable`. <span> is listed in both `std.span` and `std.experimental.span`. Delete the latter module. There is no `__errc` module or header, so remove that export from `std.system_error`. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D153211
-
Yuanfang Chen authored
size_t is unsigned int on ARM.
-
Raghu Maddhipatla authored
[Flang] [OpenMP] [Semantics] Change SIMD ALIGNED clause support from parsing a std::list<Name> to OmpObjectlist This is an assisting patch which is implemented to address review comment to switch std::list<Name> to OmpObjectlist from https://reviews.llvm.org/D142722. Also addressed a semantic check https://github.com/llvm/llvm-project/issues/61161 OpenMP 5.2 standard states that only pointer variables (C_PTR, Cray pointers, POINTER or ALLOCATABLE items) can appear in SIMD aligned clause (section 5.11). And not to allow common block names on an ALIGNED clause. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D152637
-
Denis Revunov authored
Since there are no other means to debug the instrumentation library other than using stdout, having a function to print hash table entries is very useful. Reviewed By: rafauler, Amir Differential Revision: https://reviews.llvm.org/D153771
-
Denis Revunov authored
The point of instrumentation-sleep-time option is to have a watcher process which shares memory with all other forks and dumps a common profile each n seconds. Combining it with append-pid suggests that we should get a private profile of each fork every n seconds, but such behavior is not implemented currently and is not easy to implement in general, because we somehow need to intercept each individual fork, launch a watcher process just for that fork, and also map counters so that they're only shared with that single fork. Since we're not doing it, we just disallow such combination of options. Reviewed By: rafauler, Amir Differential Revision: https://reviews.llvm.org/D153771
-