- Mar 28, 2022
-
-
Balázs Kéri authored
The "in-class initializer" expression should be set in the field of a default initialization expression before this expression node is created. The `CXXDefaultInitExpr` objects are created after the AST is loaded and at import not present in the "To" AST. And the in-class initializers of the used fields can be missing too, these must be set at import. This fixes a github issue #54061. Reviewed By: martong Differential Revision: https://reviews.llvm.org/D120824
-
Shraiysh Vaishay authored
This patch adds the ReductionClauseInterface and also adds reduction support for `omp.parallel` operation. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D122402
-
Carl Ritson authored
Split waterfall loops into multiple blocks so that exec mask manipulation (s_and_saveexec) does not occur in the middle of a block. VGPR live range optimizer is updated to handle waterfall loops spanning multiple blocks. Reviewed By: ruiling Differential Revision: https://reviews.llvm.org/D122200
-
LLVM GN Syncbot authored
-
Fangrui Song authored
-
Jean Perier authored
PointerDeallocate was silently doing nothing because it relied on Destroy that doe not do anything for Pointers. Add an option to Destroy in order to destroy pointers. Add a unit test for PointerDeallocate. Differential Revision: https://reviews.llvm.org/D122492
-
Fangrui Song authored
This reverts commit ad57e10d and 1967fd8d llvm/lib/Support/RISCVVIntrinsicUtils.cpp introduced llvm/TableGen includes, a circular dependency https://llvm.org/docs/CodingStandards.html#library-layering I think this particular instance is serious and should be reverted.
-
Adrian Kuegel authored
Reland Remove unused header includes. Add header includes that are needed, but previously were pulled in transitively.
-
Fangrui Song authored
Fix #54456: `objcopy --only-keep-debug` produces a linked image with invalid empty dynamic section. llvm-objdump -p currently reports an error which seems excessive. ``` % llvm-readelf -l a.out llvm-readelf: warning: 'a.out': no valid dynamic table was found ... ``` Follow the spirit of llvm-readelf -l (D64472) and report a warning instead. This allows later files to be dumped despite warnings for an input file, and improves objdump compatibility in that the exit code is now 0 instead of 1. ``` % llvm-objdump -p a.out # new behavior ... Program Header: llvm-objdump: warning: 'a.out': invalid empty dynamic section % objdump -p a.out ... Dynamic Section: ``` Reviewed By: jhenderson, raj.khem Differential Revision: https://reviews.llvm.org/D122505
-
Fangrui Song authored
-
Fangrui Song authored
-
Adrian Kuegel authored
This reverts commit 4edd7576. It seems we rely on transitive header includes here.
-
Adrian Kuegel authored
Keeping those includes would cause a dependency cycle between Support and TableGen targets. Differential Revision: https://reviews.llvm.org/D122555
-
Muhammad Omair Javaid authored
This patch skips TestProcessIOHandlerInterrupt on Arm/AArch64. PExpect tests are not stable when run in containerized machine.
-
LLVM GN Syncbot authored
-
Iain Sandoe authored
When the -fdirectives-only option is used together with -E, the preprocessor output reflects evaluation of if/then/else directives. As such, it preserves defines and undefs of macros that are still live after such processing. The intent is that this output could be consumed as input to generate considered a C++20 header unit. We strip out any (unused) defines that come from built-in, built-in-file or command line; these are re-added when the preprocessed source is consumed. Differential Revision: https://reviews.llvm.org/D121099
-
Kito Cheng authored
This patch is split from https://reviews.llvm.org/D111617, we need those stuffs on clang, so must moving those stuff to llvm/Support. Reviewed By: khchen Differential Revision: https://reviews.llvm.org/D121984
-
Kazu Hirata authored
-
lizhengxian.123 authored
Add explanations for WPD(whole program devirtualization) and another meaning for CFI(control flow Integrity). Reviewed By: tejohnson Differential Revision: https://reviews.llvm.org/D122473
-
Vladislav Khmelevsky authored
AArch64 requires CI to be aligned to 8 bytes due to access instructions restrictions. E.g. the ldr with imm, where imm must be aligned to 8 bytes. Differential Revision: https://reviews.llvm.org/D122065
-
Florian Hahn authored
-
Mateusz Guzik authored
In contrast to Linux it does not provide entries which can be readlinked -- these are just regular files, not giving the expected outcome. That's on top of procfs not being mounted by default to begin with. This is probably the case on other BSDs as well, so I expect there will be more ifdefs added down the road. Reviewed By: emaste, dim Differential Revision: https://reviews.llvm.org/D122545
-
- Mar 27, 2022
-
-
Mark de Wever authored
-
chenglin.bi authored
Extracted from D122152
-
zhongyunde authored
Accord the discussion in D120953, we should firstly exclude all scalable vector extending loads and then selectively enable those which we directly support. This patch is intend to refactor for above (truncating stores is not touched),and more scalable vector types will try to reduce the number of masked loads in favour of more unpklo/hi instructions. Reviewed By: paulwalker-arm Differential Revision: https://reviews.llvm.org/D122281
-
Hirochika Matsumoto authored
Extracted from D122077.
-
Iain Sandoe authored
We wish to support emitting a pre-processed output for an importable header unit, that can be consumed to produce the same header units as the original source. This means that ee need to find the original filename used to produce the re-preprocessed output, so that it can be assigned as the module name. This is peeked from the first line of the pre-processed source when the action sets up the files. Differential Revision: https://reviews.llvm.org/D121098
-
Phoebe Wang authored
This is used for f16 emulation. We emulate f16 for SSE2 targets and above. Refactoring makes the future code to be more clean. Reviewed By: LuoYuanke Differential Revision: https://reviews.llvm.org/D122475
-
Luo, Yuanke authored
In DAGISel, the parameter alignment only have 4 bits to hold the value. The encode(alignment) would plus the value by 1, so the max aligment that ISel can support is 2^14. This patch verify align attribute for parameter. Differential Revision: https://reviews.llvm.org/D122130
-
Shengchen Kan authored
[X86][tablgen] Extract common functions in X86EVEX2VEXTablesEmitter.cpp and X86FoldTablesEmitter.cpp to avoid duplicated code. NFC
-
Luo, Yuanke authored
In DAGISel, the parameter alignment only have 4 bits to hold the value. The encode(alignment) would plus the shift value by 1, so the max aligment ISel can support is 2^14. This patch verify the parameter and return value for alignment. Differential Revision: https://reviews.llvm.org/D121898
-
Shengchen Kan authored
[X86][tablgen] Remove PointerLikeRegClass from isRegisterOperand b/c getRegOperandSize crashes for it. NFCI
-
David Green authored
The default expansion for buildvectors is to extract each element and insert them into a new vector. That involves a lot of copying to/from the GPR registers. TLB3 and TLB4 can be relatively slow instructions with the mask needing to be loaded from a constant pool, but they should always be better than all the moves to/from GPRs. Differential Revision: https://reviews.llvm.org/D121137
-
Martin Storsjö authored
In practice, Windows paths can use either backslashes or forward slashes. This fixes an issue reported downstream at https://github.com/mstorsjo/llvm-mingw/issues/266. Differential Revision: https://reviews.llvm.org/D122389
-
Martin Storsjö authored
Some signal handlers were set up within an !_MSC_VER condition, i.e. omitted in MSVC builds but included in mingw builds. Previously sigtstp_handler was defined in all builds, but since 4bcadd66 / D120320 it's only defined non platforms other than Windows. Change the condition to !_WIN32 for consistency between the MSVC and mingw builds, fixing the build for mingw. Differential Revision: https://reviews.llvm.org/D122486
-
Lang Hames authored
-
Lang Hames authored
Now opens with advice on what to do, rather than what *not* to do.
-
Alisamar Husain authored
Now the decoded thread has Append methods that provide more flexibility in terms of the underlying data structure that represents the instructions. In this case, we are able to represent the sporadic errors as map and thus reduce the size of each instruction. Differential Revision: https://reviews.llvm.org/D122293
-
Iain Sandoe authored
For header units we build the top level module directly from the header that it represents and macros defined in this TU need to be emitted (when such a definition is live at the end of the TU). Differential Revision: https://reviews.llvm.org/D121097
-
LLVM GN Syncbot authored
-