| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 135339
|
| |
|
|
|
|
|
| |
assertion I added in r135333. Check for the existence of a preheader
before expanding a recurrence.
llvm-svn: 135335
|
| |
|
|
| |
llvm-svn: 135334
|
| |
|
|
|
|
|
| |
related bug fixes and corresponding assertions for uninitialized data
and missing NULL check. Test cases will be included with the new LFTR.
llvm-svn: 135333
|
| |
|
|
| |
llvm-svn: 135332
|
| |
|
|
|
|
|
| |
This should unbreak the build-self-4-mingw32 tester. I have a very
complicated test case that I will try to clean up.
llvm-svn: 135329
|
| |
|
|
|
|
| |
fixing some objc llvm-test crashes with LTO.
llvm-svn: 135324
|
| |
|
|
| |
llvm-svn: 135323
|
| |
|
|
| |
llvm-svn: 135320
|
| |
|
|
|
|
| |
tBLXr, using pseudo-instructions to lower to the single final opcode. Update the ARM disassembler for this change.
llvm-svn: 135319
|
| |
|
|
|
|
| |
and just use the ones from TargetLowering directly.
llvm-svn: 135318
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Make non-legal 256-bit loads to be promoted to v4i64. This lets us
canonize the loads and handle things the same way we use to handle
for 128-bit registers. Despite of what one of the removed comments
explained, the load promotion would not mess with VPERM, it's only a
matter of doing the appropriate bitcasts when this instructions comes
to be introduced. Also make LOAD v8i32 legal.
2) Doing 1) exposed two bugs:
- v4i64 was being promoted to itself for several opcodes (introduced
in r124447 by David Greene) causing endless recursion and the stack to
explode.
- there was no support for allOnes BUILD_VECTORs and ANDNP would fail to
match because it was generating early target constant pools during
lowering.
3) The testcases are already checked-in, doing 1) exposed the
bugs in the current testcases.
4) Tidy up code to be more clear and explicit about AVX.
llvm-svn: 135313
|
| |
|
|
|
|
| |
comming together with other tests.
llvm-svn: 135312
|
| |
|
|
| |
llvm-svn: 135311
|
| |
|
|
|
|
|
|
|
|
|
| |
This gets rid of some of the gory splitting details in RAGreedy and
makes them available to future SplitKit clients.
Slightly generalize the functionality to support multi-way splitting.
Specifically, SplitEditor::splitLiveThroughBlock() supports switching
between different register intervals in a block.
llvm-svn: 135307
|
| |
|
|
| |
llvm-svn: 135305
|
| |
|
|
| |
llvm-svn: 135303
|
| |
|
|
|
|
| |
lexical scope.
llvm-svn: 135302
|
| |
|
|
|
|
| |
not isEquality().
llvm-svn: 135296
|
| |
|
|
|
|
| |
to simplify the path towards an auto-generated disassembler.
llvm-svn: 135290
|
| |
|
|
|
|
|
| |
- No ELF or COFF implementation yet, I don't have a way to test that.
Should be straightforward to add though.
llvm-svn: 135288
|
| |
|
|
|
|
|
|
|
| |
is named after a common idiom (i.e., memset/memcpy). Otherwise, we can run into
infinite recursion. Ideally, the user should use the correct -fno-builtin flag,
but in case they don't we should play nicely.
rdar://9763412
llvm-svn: 135286
|
| |
|
|
|
|
| |
the type of VEXT. This can be achieved with a Pat definition, and is much more disassembler friendly.
llvm-svn: 135283
|
| |
|
|
| |
llvm-svn: 135282
|
| |
|
|
| |
llvm-svn: 135281
|
| |
|
|
| |
llvm-svn: 135278
|
| |
|
|
|
|
| |
MSVC decorates (and distinguishes) "const" in mangler. It brought linkage error between "extern const" declarations and definitions.
llvm-svn: 135269
|
| |
|
|
|
|
| |
direct copy of that instead of first copying to a SmallString and converting that to a std::string. Also fix some indentation.
llvm-svn: 135267
|
| |
|
|
| |
llvm-svn: 135265
|
| |
|
|
|
|
|
|
|
| |
desired overload.
This is a bit of a hackish workaround to fix the compile after r135259.
Let me know if there is a better approach.
llvm-svn: 135261
|
| |
|
|
|
|
| |
memory for the result.
llvm-svn: 135259
|
| |
|
|
| |
llvm-svn: 135254
|
| |
|
|
|
|
|
| |
which was just replaceAllUsesWith without some assertions. It was
needed back when type refinement was alive.
llvm-svn: 135253
|
| |
|
|
|
|
| |
4 files changed, 15 insertions(+), 60 deletions(-)
llvm-svn: 135252
|
| |
|
|
| |
llvm-svn: 135251
|
| |
|
|
|
|
| |
Devirtualize the isNegativeZeroValue method.
llvm-svn: 135249
|
| |
|
|
| |
llvm-svn: 135248
|
| |
|
|
|
|
| |
that type refinement is toast.
llvm-svn: 135245
|
| |
|
|
|
|
|
|
|
|
| |
was really intended, and it may have been required prior to some of the
recent refactors. Including it however causes LLVMX86Desc to need
symbols from LLVMX86CodeGen, forming a dependency cycle. This was masked
in almost all builds: Clang, and GCC w/ optimizations didn't actually
emit the symbols!
llvm-svn: 135242
|
| |
|
|
|
|
|
| |
solution but it is a small step towards removing the horror that is
TargetAsmInfo.
llvm-svn: 135237
|
| |
|
|
| |
llvm-svn: 135236
|
| |
|
|
|
|
|
|
|
|
|
|
| |
backend. Moved some MCAsmInfo files down into the MCTargetDesc
sublibraries, removed some (i suspect long) dead files from other parts
of the CMake build, etc. Also copied the include directory hack from the
Makefile.
Finally, updated the lib deps. I spot checked this, and think its
correct, but review appreciated there.
llvm-svn: 135234
|
| |
|
|
| |
llvm-svn: 135232
|
| |
|
|
| |
llvm-svn: 135231
|
| |
|
|
|
|
| |
- I don't see a better way than duplicating all the code.
llvm-svn: 135229
|
| |
|
|
|
|
| |
text, not for load commands name __TEXT (which isn't the case in actual object files)
llvm-svn: 135228
|
| |
|
|
| |
llvm-svn: 135227
|
| |
|
|
|
|
| |
MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219
|
| |
|
|
|
|
| |
* The personality function should be encoded as an absolute pointer to the function.
llvm-svn: 135215
|
| |
|
|
| |
llvm-svn: 135212
|