- Dec 21, 2020
-
-
Fangrui Song authored
-
Fangrui Song authored
`CHECK-FINAL-NOT: global` can match the input filename (e.g. clang-cmake-aarch64-global-isel) and fail spuriously.
-
Fangrui Song authored
-
Fangrui Song authored
This relands D64327 with a more specific workaround for R_386_GOTOFF (gold<2.34 bug https://sourceware.org/bugzilla/show_bug.cgi?id=16794) .debug_info has quite a few .debug_str relocations (R_386_32/R_ARM_ABS32). The original workaround was too general and introduced too many .L symbols used just as relocation targets. From the original review: ... it reduced the size of a big ARM-32 debug image by 33%. It contained ~68M of relocations symbols out of total ~71M symbols (96% of symbols table was generated for relocations with symbol).
-
Ben Shi authored
Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D93589
-
Kazu Hirata authored
-
Arthur Eubanks authored
Requires x86 target to be registered.
-
Chen Zheng authored
This patch does two things: 1: fix the typo that intrinsic mfvscr should be with no readmem property 2: since VSCR is not modeled yet, add has side effect for SAT bit clobber intrinsics/instructions. Reviewed By: steven.zhang Differential Revision: https://reviews.llvm.org/D90807
-
Chen Zheng authored
Fixup dead flags for CSE-ed instructions. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D92557
-
Arthur Eubanks authored
The -O2 isn't used in the test.
-
Shilei Tian authored
[OpenMP] Fixed the issue that CMake variables for OpenMP were not passed through when building OpenMP with LLVM_ENABLE_RUNTIMES Currently when building OpenMP along with LLVM, CMake variables for OpenMP (prefix with `LIBOMP` and `LIBOMPTARGET`) will not be passed through because by default it uses the prefix of the runtime name, aka `OPENMP` in this case. This patch fixed this issue. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D93603
-
Fangrui Song authored
This is consistent with the resolution to power-of-2 alignments. Otherwise, emitCodeAlignment and emitValueToAlignment cannot handle alignments larger than 2**32 and will trigger assertion failure (PR35218). Note: GNU as as of 2.35 will use 1 for such a large byte `.align`
-
Samuel Eubanks authored
Currently there is an issue where the legacy pass manager uses a different OptBisect counter than the new pass manager. This fix makes the npm OptBisectInstrumentation use the global OptBisect. Reviewed By: aeubanks Differential Revision: https://reviews.llvm.org/D92897
-
David Green authored
-
Nikita Popov authored
-
Jez Ng authored
Also remove iteration over ArchiveFile symbols in buildInputSectionPriorities -- that was rendered unnecessary after D92539, which included ObjFiles from ArchiveFiles inside the `inputFiles` vector. Reviewed By: #lld-macho, smeenai Differential Revision: https://reviews.llvm.org/D93569
-
Jez Ng authored
Obj-C symbols may have spaces and colons, which our previous order file parser would be confused by. The order file format has made the very unfortunate choice of using colons for its delimiters, which means that we have to use heuristics to determine if a given colon is part of a symbol or not... Reviewed By: #lld-macho, thakis Differential Revision: https://reviews.llvm.org/D93567
-
Jez Ng authored
Makes it much easier to edit / maintain. Reviewed By: #lld-macho, smeenai Differential Revision: https://reviews.llvm.org/D93566
-
Fangrui Song authored
This should fix: Failed Tests (2): LLVM-Unit :: Object/./ObjectTests/ELFObjectFileTest.InvalidSymbolTest LLVM :: tools/llvm-readobj/ELF/relocation-errors.test
-
Kazu Hirata authored
This patch removes InstrumentFuncEntry as it is dead. The constructor of FuncPGOInstrumentation passes InstrumentFuncEntry to MST, but it doesn't make a local copy as a member variable.
-
Kazu Hirata authored
-
Nikita Popov authored
-
- Dec 20, 2020
-
-
ShihPo Hung authored
Differential Revision: https://reviews.llvm.org/D93286
-
Simon Pilgrim authored
Add missing llvm_unreachable()'s after each all-enums switch statement.
-
Chris Warner authored
Modify the cppcoreguidelines-pro-type-member-init checker to ignore warnings from the move and copy-constructors when they are compiler defined with `= default` outside of the type declaration. Reported as [LLVM bug 36819](https://bugs.llvm.org/show_bug.cgi?id=36819) Reviewed By: malcolm.parsons Differential Revision: https://reviews.llvm.org/D93333
-
Michał Górny authored
-
Hsiangkai Wang authored
Define vector vfwmul intrinsics and lower them to V instructions. We work with @rogfer01 from BSC to come out this patch. Authored-by:
Roger Ferrer Ibanez <rofirrim@gmail.com> Co-Authored-by:
Hsiangkai Wang <kai.wang@sifive.com> Differential Revision: https://reviews.llvm.org/D93584
-
Hsiangkai Wang authored
Define vector vfwadd/vfwsub intrinsics and lower them to V instructions. We work with @rogfer01 from BSC to come out this patch. Authored-by:
Roger Ferrer Ibanez <rofirrim@gmail.com> Co-Authored-by:
Hsiangkai Wang <kai.wang@sifive.com> Differential Revision: https://reviews.llvm.org/D93583
-
Hsiangkai Wang authored
Define vector vfsgnj/vfsgnjn/vfsgnjx intrinsics and lower them to V instructions. We work with @rogfer01 from BSC to come out this patch. Authored-by:
Roger Ferrer Ibanez <rofirrim@gmail.com> Co-Authored-by:
Hsiangkai Wang <kai.wang@sifive.com> Differential Revision: https://reviews.llvm.org/D93581
-
Hsiangkai Wang authored
Define vector vfmul/vfdiv/vfrdiv intrinsics and lower them to V instructions. We work with @rogfer01 from BSC to come out this patch. Authored-by:
Roger Ferrer Ibanez <rofirrim@gmail.com> Co-Authored-by:
Hsiangkai Wang <kai.wang@sifive.com> Differential Revision: https://reviews.llvm.org/D93580
-
Pavel Labath authored
It works, and it should be more stable than forward connections.
-
Gnimuc authored
This was likely an oversight in https://reviews.llvm.org/D92292 Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D93588
-
Reid Kleckner authored
-
Andrew Litteken authored
Extracted regions can have both inputs and outputs. In addition, the CodeExtractor removes inputs that are only used in llvm.assumes, and sunken allocas (values are used entirely in the extracted region as denoted by lifetime intrinsics). We also cannot combine sections that have different constants in the same structural location, and these constants will have to elevated to argument. This patch deduplicates extracted functions that only have inputs and non of the special cases. We test that correctly deduplicate in: test/Transforms/IROutliner/outlining-same-globals.ll test/Transforms/IROutliner/outlining-same-constants.ll test/Transforms/IROutliner/outlining-different-structure.ll Reviewers: jroelofs, paquette Differential Revision: https://reviews.llvm.org/D86978
-
Andrew Litteken authored
Missing reviewers and differential revision in commit message. This reverts commit 5cdc4f57.
-
Andrew Litteken authored
Extracted regions can have both inputs and outputs. In addition, the CodeExtractor removes inputs that are only used in llvm.assumes, and sunken allocas (values are used entirely in the extracted region as denoted by lifetime intrinsics). We also cannot combine sections that have different constants in the same structural location, and these constants will have to elevated to argument. This patch deduplicates extracted functions that only have inputs and non of the special cases. We test that correctly deduplicate in: test/Transforms/IROutliner/outlining-same-globals.ll test/Transforms/IROutliner/outlining-same-constants.ll test/Transforms/IROutliner/outlining-different-structure.ll
-
Craig Topper authored
These properties aren't additive. They are closer to ReadOnly and WriteOnly. The default is ReadWrite. ReadMem cancels the write property and WriteMem cancels the read property. Combining them leaves neither. This patch checks that when we process WriteMem, the Mod flag is still set. And for ReadMem we check that the Ref flag set still set. I've updated 2 target intrinsics that were combining these properties. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D93571
-
Greg McGary authored
The common encodings table holds only 127 entries. The encodings index for compact entries is 8 bits wide, and indexes 127..255 are stored locally to each second-level page. Prior to this diff, lld would `fatal()` if encodings overflowed the 127 limit. This diff populates a per-second-level-page encodings table as needed. When the per-page encodings table hits its limit, we must terminate the page. If such early termination would consume fewer entries than a regular (non-compact) encoding page, then we prefer the regular format. Caveat: one reason the common-encoding table might overflow is because of DWARF debug-info references, which are not yet implemented and will come with a later diff. Differential Revision: https://reviews.llvm.org/D93267
-
Roman Lebedev authored
... for conditional branch case
-
Roman Lebedev authored
-