| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
This should fix the broken bots.
llvm-svn: 273918
|
| |
|
|
|
|
| |
Also fix pointlessly adding exec to liveins.
llvm-svn: 273916
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Our YAML library's handling of tags isn't perfect, but it is good enough to get rid of the need for the --format argument to yaml2obj. This patch does exactly that.
Instead of requiring --format, it infers the format based on the tags found in the object file. The supported tags are:
!ELF
!COFF
!mach-o
!fat-mach-o
I have a corresponding patch that is quite large that fixes up all the in-tree test cases.
Reviewers: rafael, Bigcheese, compnerd, silvas
Subscribers: compnerd, llvm-commits
Differential Revision: http://reviews.llvm.org/D21711
llvm-svn: 273915
|
| |
|
|
|
|
|
| |
Code already assumes this is float. getFPAccuracy()
crashes on any other type.
llvm-svn: 273912
|
| |
|
|
| |
llvm-svn: 273909
|
| |
|
|
| |
llvm-svn: 273907
|
| |
|
|
|
|
|
| |
There's at least one more fold to do here:
https://llvm.org/bugs/show_bug.cgi?id=28153
llvm-svn: 273904
|
| |
|
|
| |
llvm-svn: 273903
|
| |
|
|
|
|
|
|
|
| |
This uses `1U` instead of `1ULL` because StratifiedAttrs is a 32-bit
bitset.
Thanks to Hans-Bernhard Broker for bringing this up.
llvm-svn: 273902
|
| |
|
|
|
|
| |
NFC.
llvm-svn: 273901
|
| |
|
|
| |
llvm-svn: 273900
|
| |
|
|
|
|
|
|
| |
Fixed a bug in EmitTest() function in combining shl + icmp.
https://llvm.org/bugs/show_bug.cgi?id=28119
llvm-svn: 273899
|
| |
|
|
|
|
| |
The APInt matcher works with splat vectors, so we get this fold for vectors too.
llvm-svn: 273897
|
| |
|
|
| |
llvm-svn: 273896
|
| |
|
|
|
|
| |
intrinsics" since some of the clang tests don't expect to see the updated signatures.
llvm-svn: 273895
|
| |
|
|
|
|
| |
Differential revision: http://reviews.llvm.org/D21699
llvm-svn: 273894
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a resubmittion of 263158 change after fixing the existing problem with intrinsics mangling (see LTO and intrinsics mangling llvm-dev thread for details).
This patch fixes the problem which occurs when loop-vectorize tries to use @llvm.masked.load/store intrinsic for a non-default addrspace pointer. It fails with "Calling a function with a bad signature!" assertion in CallInst constructor because it tries to pass a non-default addrspace pointer to the pointer argument which has default addrspace.
The fix is to add pointer type as another overloaded type to @llvm.masked.load/store intrinsics.
Reviewed By: reames
Differential Revision: http://reviews.llvm.org/D17270
llvm-svn: 273892
|
| |
|
|
| |
llvm-svn: 273891
|
| |
|
|
|
|
|
|
|
|
| |
dynamic allocas, LLVM part
See the bug report at https://github.com/google/sanitizers/issues/691. When a dynamic alloca has a constant size, ASan instrumentation will treat it as a regular dynamic alloca (insert calls to poison and unpoison), but the backend will turn it into a regular stack variable. The poisoning/unpoisoning is then broken. This patch will treat such allocas as static.
Differential Revision: http://reviews.llvm.org/D21509
llvm-svn: 273888
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Created a pattern to match 64-bit mode (and (xor x, -1), y)
to a shorter sequence of instructions.
Before the change, the canonical form is translated to:
xihf %r3, 4294967295
xilf %r3, 4294967295
ngr %r2, %r3
After the change, the canonical form is translated to:
ngr %r3, %r2
xgr %r2, %r3
Reviewers: zhanjunl, uweigand
Subscribers: llvm-commits
Author: assem
Committing on behalf of Assem.
Differential Revision: http://reviews.llvm.org/D21693
llvm-svn: 273887
|
| |
|
|
| |
llvm-svn: 273885
|
| |
|
|
|
|
|
|
| |
Reviewers: vkalintiris, dsanders
Differential Review: http://reviews.llvm.org/D21679
llvm-svn: 273883
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main issue here is that the "thumb" flag wasn't set for some of these
sections, making MSVC's link.exe fails to correctly relocate code
against the symbols inside these sections. link.exe could fail for
instance with the "fixup is not aligned for target 'XX'" error. If
linking doesn't fail, the relocation process goes wrong in the end and
invalid code is generated by the linker.
This patch adds Thumb/ARM information so that the right flags are set
on COFF/Windows.
Patch by Adrien Guinet.
llvm-svn: 273880
|
| |
|
|
| |
llvm-svn: 273879
|
| |
|
|
| |
llvm-svn: 273878
|
| |
|
|
|
|
| |
Use it in ppc too.
llvm-svn: 273877
|
| |
|
|
|
|
| |
Differential Review: http://reviews.llvm.org/rL273108
llvm-svn: 273876
|
| |
|
|
| |
llvm-svn: 273875
|
| |
|
|
| |
llvm-svn: 273874
|
| |
|
|
|
|
|
|
| |
Same as r273556, but with C++11 member initializers.
Change suggested by Matthias Braun (see http://reviews.llvm.org/D21432).
llvm-svn: 273873
|
| |
|
|
| |
llvm-svn: 273872
|
| |
|
|
|
|
| |
It now takes a IsPIC flag instead of computing and returning it.
llvm-svn: 273871
|
| |
|
|
| |
llvm-svn: 273870
|
| |
|
|
| |
llvm-svn: 273868
|
| |
|
|
|
|
|
| |
The arrayref overload is more flexible with virtually the same
interface. NFC.
llvm-svn: 273867
|
| |
|
|
| |
llvm-svn: 273866
|
| |
|
|
| |
llvm-svn: 273865
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It did not handle correctly cases without GEP.
The following loop wasn't vectorized:
for (int i=0; i<len; i++)
*to++ = *from++;
I use getPtrStride() to find Stride for memory access and return 0 is the Stride is not 1 or -1.
Re-commit rL273257 - revision: http://reviews.llvm.org/D20789
llvm-svn: 273864
|
| |
|
|
| |
llvm-svn: 273860
|
| |
|
|
| |
llvm-svn: 273859
|
| |
|
|
| |
llvm-svn: 273858
|
| |
|
|
|
|
| |
No functionality change intended, found by cppcheck. PR28274.
llvm-svn: 273857
|
| |
|
|
| |
llvm-svn: 273854
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up for r273544.
The end goal is to get rid of the isSwift / isCortexXY / isWhatever methods.
Since the ARM backend seems to have quite a lot of calls to these methods, I
intend to submit 5-6 subtarget features at a time, instead of one big lump.
Differential Revision: http://reviews.llvm.org/D21685
llvm-svn: 273853
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Actually the list of cached files is sorted by file size, not by last accessed time. Also remove unused file access time param for a helper function.
Reviewers: joker-eph, chandlerc, davide
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D21639
llvm-svn: 273852
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: davide
Subscribers: davide, llvm-commits
Differential Revision: http://reviews.llvm.org/D21638
llvm-svn: 273851
|
| |
|
|
|
|
|
|
| |
instructions
Differential Revision: http://reviews.llvm.org/D16625
llvm-svn: 273850
|
| |
|
|
|
|
|
|
|
|
|
|
| |
AVX1 can only broadcast vectors as floats/doubles, so for 256-bit vectors we insert bitcasts if we are shuffling v8i32/v4i64 types. Unfortunately the presence of these bitcasts prevents the current broadcast lowering code from peeking through cases where we have concatenated / extracted vectors to create the 256-bit vectors.
This patch allows us to peek through bitcasts as long as the number of elements doesn't change (i.e. element bitwidth is the same) so the broadcast index is not affected.
Note this bitcast peek is different from the stage later on which doesn't care about the type and is just trying to find a load node.
Differential Revision: http://reviews.llvm.org/D21660
llvm-svn: 273848
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D21735
llvm-svn: 273845
|
| |
|
|
| |
llvm-svn: 273843
|