| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Undo stray change introduced by r344725.
llvm-svn: 344814
|
| |
|
|
| |
llvm-svn: 344813
|
| |
|
|
| |
llvm-svn: 344812
|
| |
|
|
|
|
|
|
|
|
|
| |
https://reviews.llvm.org/D53304
Currently dead phis are not cleaned up during DCE. This patch allows
dead PHI and G_PHI insts to be deleted.
Reviewed by: dsanders
llvm-svn: 344811
|
| |
|
|
|
|
| |
This adds back the test case reverted in commit: d260a269200824c5c1c8c6de531fd5aa63db9c35
llvm-svn: 344809
|
| |
|
|
|
|
|
|
|
|
| |
There is no guarantee the root is at the end if isel created any nodes without morphing them. This includes the nodes created by manual isel from C++ code in X86ISelDAGToDAG.
This is similar to r333415 from PowerPC which is where I originally stole the peephole loop from.
I don't have a test case, but without this a future patch doesn't work which is how I found it.
llvm-svn: 344808
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes PR38990.
Considers the index when extracting location lists from a .dwp file.
Majority of the patch by David Blaikie.
Reviewers: dblaikie
Differential revision: https://reviews.llvm.org/D53155
llvm-svn: 344807
|
| |
|
|
|
|
| |
This reverts commit 84677d5009d613232d360fda27e6e41fb5cb6700.
llvm-svn: 344806
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Undefined indices in shuffles can be used when not all lanes of the
output vector will be used. This happens for example in the expansion
of vector reduce operations. Regardless, undefs are legal as lane
indices in IR and should be supported.
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D53057
llvm-svn: 344803
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Large GEP splitting, introduced in rL332015, uses a `DenseMap<AssertingVH<Value>, ...>`. This causes an assertion to fail (in debug builds) or undefined behaviour to occur (in release builds) when a value is RAUWed.
This manifested itself in the 7zip benchmark from the llvm test suite built on ARM with `-fstrict-vtable-pointers` enabled while RAUWing invariant group launders and splits in CodeGenPrepare.
This patch merges the large offsets of the argument and the result of an invariant.group strip/launder intrinsic before RAUWing.
Reviewers: Prazek, javed.absar, haicheng, efriedma
Reviewed By: Prazek, efriedma
Subscribers: kristof.beyls, hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D51936
llvm-svn: 344802
|
| |
|
|
|
|
|
|
|
| |
Rather, they are subexpressions of the enclosing lambda-expression, and
any temporaries in them are destroyed at the end of that
full-expression, or when the corresponding lambda-expression is
destroyed if they are lifetime-extended.
llvm-svn: 344801
|
| |
|
|
|
|
| |
situations.
llvm-svn: 344800
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Depends on D52765
Reviewers: aheejin, dschuff
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D52766
llvm-svn: 344799
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: rnk, zturner, aleksandr.urakov
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D53092
llvm-svn: 344798
|
| |
|
|
|
|
|
| |
Starting from revision r344334, we can now describe optimizable
register-register moves in the machine scheduling models.
llvm-svn: 344797
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Depends on D52764
Reviewers: aheejin, dschuff
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D52765
llvm-svn: 344796
|
| |
|
|
|
|
|
|
| |
The sanitizer builder that was broken by this should now be fixed.
Original review was https://reviews.llvm.org/D53109
llvm-svn: 344795
|
| |
|
|
|
|
|
|
|
| |
llvm-dwarfdump --diff should not print DW_AT_ranges. This patch fixes
that.
Differential revision: https://reviews.llvm.org/D53353
llvm-svn: 344794
|
| |
|
|
| |
llvm-svn: 344793
|
| |
|
|
| |
llvm-svn: 344791
|
| |
|
|
|
|
|
| |
These should all be handled using "dyn_castNegVal",
but that misses vectors with undef elements.
llvm-svn: 344790
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, Java annotation declarations (@interface AnnotationName) were being
handled as ObjC interfaces. This caused the brace formatting to mess up, so
that when you had a class with an interface defined in it, it would indent the
final brace of the class.
It used to format this class like so:
class A {
@interface B {}
}
But will now just skip the @interface and format it like so:
class A {
@interface B {}
}
Patch by Sam Maier!
Differential Revision: https://reviews.llvm.org/D53434
llvm-svn: 344789
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: These tests fail on Windows because of known limitations (a.k.a. bugs) with the current implementation of GetFrameAtIndex
Reviewers: asmith, vsk
Reviewed By: vsk
Subscribers: abidh, lldb-commits
Differential Revision: https://reviews.llvm.org/D53415
llvm-svn: 344788
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Rename instance variable to WorkspaceRoot to match what we call it internally.
Add fixme to set it automatically. Don't do it yet, clients have assumptions
that the constructor won't access the FS.
Don't second-guess the provided root.
Reviewers: ioeric
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D53404
llvm-svn: 344787
|
| |
|
|
| |
llvm-svn: 344786
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
constexpr if.
Summary:
It fixes the false positive when using constexpr if and where else cannot be removed:
Example:
```
if constexpr (sizeof(int) > 4)
// ...
return /* ... */;
else // This else cannot be removed.
// ...
return /* ... */;
```
Reviewers: alexfh, aaron.ballman
Reviewed By: aaron.ballman
Subscribers: lebedev.ri, xazax.hun, cfe-commits
Differential Revision: https://reviews.llvm.org/D53372
llvm-svn: 344785
|
| |
|
|
| |
llvm-svn: 344784
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The goal of this change is to make the ASTImporter::Import functions return
llvm::Expected instead of the imported type.
As first part the ASTNodeImporter visit functions are updated to return with
llvm::Expected. Various `import` functions are added to ASTNodeImporter to
simplify the code and have a common place for interface towards ASTImporter
(from ASTNodeImporter). There is some temporary code that is needed before
ASTImporter is updated.
Reviewers: a.sidorin, a_sidorin, xazax.hun
Reviewed By: a_sidorin
Subscribers: dkrupp, Szelethus, rnkovacs, martong, jfb, cfe-commits
Differential Revision: https://reviews.llvm.org/D51633
llvm-svn: 344783
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We only support the first form because we rely on information that is
only available there.
Reviewers: gchatelet
Subscribers: tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D53430
llvm-svn: 344782
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids a crash (with asserts) or bad codegen (without asserts)
in Dwarf streamer later on. This patch fixes this condition in
MCStreamer and propogates SMLoc down when it's available with an
added bonus of source locations for those specific types of errors.
Further patches could use similar improvements as currently most
non-Windows CFI directives lack an SMLoc parameter.
Modified an existing test to verify source location propogation and
added an object-file version of it to verify that it does not crash in
addition to a standalone test to only ensure it does not crash.
Differential Revision: https://reviews.llvm.org/D51695
llvm-svn: 344781
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: gchatelet
Subscribers: tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D53429
llvm-svn: 344780
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This was lost during refactoring in rL342644.
Fix and simplify simplify value size handling: always go through a 80 bit value,
because the value can be 1 byte). Add unit tests.
Reviewers: gchatelet
Subscribers: tschuett, llvm-commits
Differential Revision: https://reviews.llvm.org/D53423
llvm-svn: 344779
|
| |
|
|
|
|
|
|
|
|
| |
The get_kernel_* functions used in cl20-device-side-enqueue.cl all return
unsigned integers. This patch avoids undesired implicit conversions on the
returned values.
Differential Revision: https://reviews.llvm.org/D52873
llvm-svn: 344778
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
LLVM codebase has generated files (all are build/Target/XXX/*.inc) that
exceed the MaxLine & MaxColumn. Printing these log would be noisy.
Reviewers: sammccall
Subscribers: ilya-biryukov, ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D53400
llvm-svn: 344777
|
| |
|
|
|
|
|
|
|
| |
Normally one wouldn't run into that case, but it is possible with
a little creative ordering of special libraries.
Differential Revision: https://reviews.llvm.org/D53388
llvm-svn: 344776
|
| |
|
|
| |
llvm-svn: 344775
|
| |
|
|
| |
llvm-svn: 344774
|
| |
|
|
|
|
|
|
|
| |
That revision changed integer members to bitfields; the integers were
default initialized before and the bitfields lost that default
initialization. This started causing msan use-of-uninitialized memory in
clangd tests.
llvm-svn: 344773
|
| |
|
|
|
|
|
|
|
| |
test too
Apparently the bots were still failing with this.
Sadly, i did not see *this* failure when i last looked.
llvm-svn: 344772
|
| |
|
|
|
|
| |
http://lab.llvm.org:8011/builders/clang-cmake-armv7-full/builds/2683/.
llvm-svn: 344771
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When using MachineInstr to get SlotIndex, the MI could not be a debug
instruction. mi2iMap does not contain debug instructions in it.
After enabling DBG_LABEL in the generated code, the first instruction in
the bundle may be a debug instruction. In this patch, I use the first
non-debug instruction in the bundle to query SlotIndex in mi2iMap.
Bugzilla report: https://bugs.llvm.org/show_bug.cgi?id=39094
Differential revision: https://reviews.llvm.org/D52927
llvm-svn: 344770
|
| |
|
|
| |
llvm-svn: 344769
|
| |
|
|
|
|
| |
directly.
llvm-svn: 344768
|
| |
|
|
|
|
|
|
|
|
| |
aarch64 target
This should unbreak bots broken here:
http://lab.llvm.org:8011/builders/clang-cmake-x86_64-sde-avx512-linux/builds/14391
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/38288
llvm-svn: 344767
|
| |
|
|
|
|
|
| |
Per llvm.org: "The name "LLVM" itself is not an acronym; it is the full
name of the project."
llvm-svn: 344766
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: rnk, compnerd, mstorsjo, efriedma, TomTan, haripul, javed.absar
Reviewed By: efriedma
Subscribers: dmajor, kristof.beyls, chrib, cfe-commits
Differential Revision: https://reviews.llvm.org/D53115
llvm-svn: 344765
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This updates the C API for the removal of `TerminatorInst`. It converts
the type query to a predicate query and moves the generic methods to
work on `Instruction` instances that satisfy this predicate rather than
requiring a specific type. It also clarifies that the C API wrapping
`BasicBlock::getTerminator` just returns an `Instruction`. Because this
was always wrapped opaquely as a value and the functions consuming these
values will work on `Instruction` objects, this shouldn't break any
clients.
This is a completely compatible change to the C API.
Differential Revision: https://reviews.llvm.org/D52968
llvm-svn: 344764
|
| |
|
|
|
|
|
|
|
| |
Because I'm about to get on stage at the dev meeting and claim that it exists.
This method creates a JITDylib instance with the given name and returns a
reference to it.
llvm-svn: 344763
|
| |
|
|
| |
llvm-svn: 344762
|
| |
|
|
| |
llvm-svn: 344761
|