| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 270414
|
|
|
|
| |
llvm-svn: 270413
|
|
|
|
|
|
|
|
|
|
|
| |
Since the base pointer of a possibly aliasing pointer might not alias
with any other pointer it (the base pointer) might not be tagged as
"required invariant". However, we need it do be in order to compare
the accessed addresses of the derived (possibly aliasing) pointer.
This patch also tries to clean up the load hoisting a little bit.
llvm-svn: 270412
|
|
|
|
| |
llvm-svn: 270411
|
|
|
|
| |
llvm-svn: 270410
|
|
|
|
|
|
|
| |
We have to rethink the handling of escaping values in order to make
this kind of "fixes" go away.
llvm-svn: 270409
|
|
|
|
|
|
|
| |
This patch simplifies the Sdiv/Srem/Udiv expansion and thereby
prevents errors, e.g., regarding the insertion point.
llvm-svn: 270408
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D20514
llvm-svn: 270401
|
|
|
|
|
|
|
| |
backtraces from the signal handler on stack overflow now work reliably (on my
system at least...).
llvm-svn: 270395
|
|
|
|
|
|
| |
optimizing moves to use 2 byte VEX prefix.
llvm-svn: 270394
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, EhFrameHdr section computed addresses to which FDEs are
applied to. This is not an ideal design because EhFrameHdr does not
know much about FDEs unless EhFrame passes the information to EhFrameHdr.
It is what we did.
This patch simplifies the code by making EhFrame to compute the
values and pass the cooked information to EhFrameHdr. EhFrameHdr no
longer have to know about the details of FDEs such as FDE encodings.
llvm-svn: 270393
|
|
|
|
|
|
|
|
| |
Exherbo has an alternative file system layout to accommodate multiarch. The
loader is located at /usr/${triple}/lib/${loader}. Adjust the Linux toolchain
to support that on exherbo.
llvm-svn: 270392
|
|
|
|
| |
llvm-svn: 270391
|
|
|
|
| |
llvm-svn: 270390
|
|
|
|
|
|
|
| |
This reverts commit r270106. It results in certain function types
omitted in the output.
llvm-svn: 270389
|
|
|
|
| |
llvm-svn: 270388
|
|
|
|
| |
llvm-svn: 270387
|
|
|
|
| |
llvm-svn: 270386
|
|
|
|
| |
llvm-svn: 270385
|
|
|
|
|
|
|
|
| |
My last commit made Clang to fail with an assertion failure.
https://llvm.org/bugs/show_bug.cgi?id=27835
This is a patch to avoid that.
llvm-svn: 270384
|
|
|
|
|
|
|
|
| |
subvectors using XMM or YMM stores instead of the vector extract instructions.
Similar is already done for AVX and we had lost it going to AVX512VL.
llvm-svn: 270383
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch refactors EHOutputSection using SectionPiece struct.
EHRegion class was removed since we can now directly use SectionPiece.
An incomplete support of large CIE/FDE record (> 2^32 bytes) was removed
because it silently created broken executable. There are several places
in the existing code that "size" field is always 4 bytes and at offset 4
in the record, which is not true for 64-bit size records. We will have to
support that in future, but it is better to error out instead of creating
malformed eh_frame sections.
llvm-svn: 270382
|
|
|
|
|
|
|
| |
If TheModule is declared before LLVMContext then it will be destructed after it,
crashing when it tries to deregister itself from the destructed context.
llvm-svn: 270381
|
|
|
|
| |
llvm-svn: 270380
|
|
|
|
| |
llvm-svn: 270379
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(PR27823)
This isn't the complete fix, but it handles the trivial examples of duplicate vzero* ops in PR27823:
https://llvm.org/bugs/show_bug.cgi?id=27823
...and amusingly, the bogus cases already exist as regression tests, so let's take this baby step.
We'll need to do more in the general case where there's legitimate AVX usage in the function + there's
already a vzero in the code.
Differential Revision: http://reviews.llvm.org/D20477
llvm-svn: 270378
|
|
|
|
|
|
| |
Address a -Wunused-but-set-variable warning from gcc. NFC.
llvm-svn: 270377
|
|
|
|
|
|
|
|
| |
Using -fomit-frame-pointer sometimes makes a crash log miss some frames. Let's not use this optimization in debug builds.
Differential Revision: http://reviews.llvm.org/D20425
llvm-svn: 270376
|
|
|
|
| |
llvm-svn: 270375
|
|
|
|
| |
llvm-svn: 270374
|
|
|
|
| |
llvm-svn: 270373
|
|
|
|
| |
llvm-svn: 270372
|
|
|
|
|
|
|
| |
Remove dependency on runtime initializer to avoid
issues related to initialization order.
llvm-svn: 270371
|
|
|
|
| |
llvm-svn: 270370
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vector splat constants
We could try harder to handle non-splat vector constants too,
but that seems much rarer to me.
Note that the div test isn't resolved because there's a check
for isIntegerTy() guarding that transform.
Differential Revision: http://reviews.llvm.org/D20497
llvm-svn: 270369
|
|
|
|
| |
llvm-svn: 270368
|
|
|
|
| |
llvm-svn: 270367
|
|
|
|
| |
llvm-svn: 270366
|
|
|
|
|
|
| |
in the middle of a sentence.
llvm-svn: 270365
|
|
|
|
| |
llvm-svn: 270364
|
|
|
|
| |
llvm-svn: 270363
|
|
|
|
|
|
| |
HistoryUnwind").
llvm-svn: 270359
|
|
|
|
|
|
| |
unique_lock's release() was called causing the mutex to stay locked.
llvm-svn: 270358
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D20513
llvm-svn: 270357
|
|
|
|
|
|
| |
the source is 512-bits. The 256-bit source patterns were redundant with AVX.
llvm-svn: 270356
|
|
|
|
|
|
| |
index 0 patterns. This gives them higher priority than the memory patterns. This matches AVX1/2.
llvm-svn: 270355
|
|
|
|
|
|
| |
equivalents. This helps group them close together in the isel tables and enable table compression.
llvm-svn: 270354
|
|
|
|
|
|
|
|
|
| |
We were missing references to the standard, some of our home-grown
verbiage didn't make any sense.
No functional change is intended.
llvm-svn: 270353
|
|
|
|
|
|
|
|
| |
The parameter already requires the toolchain, sink the method into the class.
This also enables the use of the distro detection logic which will be needed to
support Exherbo's multiarch approach.
llvm-svn: 270352
|
|
|
|
|
|
|
|
| |
Convert the cascading if/else to a switch. This makes it easier to follow the
logic. Minor difference is that we no longer default to x86_64 but rather to
the architecture specified by the architecture.
llvm-svn: 270351
|