- Apr 06, 2011
-
-
Johnny Chen authored
Add more complete sanity check for LdStFrm instructions where if IBit (Inst{25}) is 1, Inst{4} should be 0. Otherwise, we should reject the insn as invalid. rdar://problem/9239347 rdar://problem/9239467 llvm-svn: 128977
-
Jim Grosbach authored
Start teaching the runtime Dyld interface to use the memory manager API for allocating space. Rather than mapping directly into the MachO object, we extract the payload for each object and copy it into a dedicated buffer allocated via the memory manager. For now, just do Segment64, so this works on x86_64, but not yet on ARM. llvm-svn: 128973
-
Owen Anderson authored
Reapply r128946 (pseudoization of various instructions), and fix the extra imp-def of CPSR it was adding. llvm-svn: 128965
-
Chandler Carruth authored
llvm-svn: 128964
-
Jakob Stoklund Olesen authored
llvm-svn: 128963
-
Jakob Stoklund Olesen authored
llvm-svn: 128962
-
Jakob Stoklund Olesen authored
Treat the landing pad as a normal successor when that happens. llvm-svn: 128961
-
Jim Grosbach authored
llvm-svn: 128959
-
Johnny Chen authored
encodings for DisassembleArithMiscFrm(). rdar://problem/9238659 llvm-svn: 128958
-
Bob Wilson authored
llvm-svn: 128953
-
Owen Anderson authored
llvm-svn: 128951
-
Johnny Chen authored
Qd -> bit[12] == 0 Qn -> bit[16] == 0 Qm -> bit[0] == 0 If one of these bits is 1, the instruction is UNDEFINED. rdar://problem/9238399 rdar://problem/9238445 llvm-svn: 128949
-
Devang Patel authored
llvm-svn: 128947
-
Owen Anderson authored
llvm-svn: 128946
-
Johnny Chen authored
Added checks for regs which should not be 15. rdar://problem/9237734 llvm-svn: 128945
-
- Apr 05, 2011
-
-
Chris Lattner authored
still used by RegionInfo :( llvm-svn: 128943
-
Johnny Chen authored
For register-controlled shifts, we should check that the encoding constraint Inst{7} = 0 and Inst{4} = 1 is satisfied. rdar://problem/9237693 llvm-svn: 128941
-
Owen Anderson authored
Fix bugs in the pseuo-ization of ADCS/SBCS pointed out by Jim, as well as doing the expansion earlier (using a custom inserter) to allow for the chance of predicating these instructions. llvm-svn: 128940
-
Jakob Stoklund Olesen authored
llvm-svn: 128935
-
Devang Patel authored
llvm-svn: 128929
-
Bob Wilson authored
of a basic block. llvm-svn: 128925
-
Nick Lewycky authored
llvm-svn: 128924
-
Johnny Chen authored
Modify DisassembleCoprocessor() of ARMDisassemblerCore.cpp to react to the change. rdar://problem/9236873 llvm-svn: 128922
-
Roman Divacky authored
llvm-svn: 128920
-
Jakob Stoklund Olesen authored
When dead code elimination removes all but one use, try to fold the single def into the remaining use. Rematerialization can leave single-use loads behind that we might as well fold whenever possible. llvm-svn: 128918
-
Devang Patel authored
llvm-svn: 128914
-
Johnny Chen authored
llvm-svn: 128913
-
Andrew Trick authored
developers can see if their driver changed any cl::Option's. The current implementation isn't perfect but handles most kinds of options. This is nice to have when decomposing the stages of compilation and moving between different drivers. It's also a good sanity check when comparing results produced by different command line invocations that are expected to produce the comparable results. Note: This is not an attempt to prolong the life of cl::Option. On the contrary, it's a placeholder for a feature that must exist when cl::Option is replaced by a more appropriate framework. A new framework needs: a central option registry, dynamic name lookup, non-global containers of option values (e.g. per-module, per-function), *and* the ability to print options values and their defaults at any point during compilation. llvm-svn: 128910
-
Shantonu Sen authored
getEDInfo(), in which case this code would dereference NULL. EDInst can already handle NULL info, so avoid the dereference and pass NULL through. Reviewed by Sean Callanan llvm-svn: 128904
-
Jim Grosbach authored
Finish what r128736 started. llvm-svn: 128903
-
Johnny Chen authored
An alternative syntax is available for a modified immediate constant that permits the programmer to specify the encoding directly. In this syntax, #<const> is instead written as #<byte>,#<rot>, where: <byte> is the numeric value of abcdefgh, in the range 0-255 <rot> is twice the numeric value of rotation, an even number in the range 0-30. llvm-svn: 128897
-
Johnny Chen authored
if dLo == 15 || dHi == 15 || n == 15 || m == 15 then UNPREDICTABLE; if dHi == dLo then UNPREDICTABLE; rdar://problem/9230202 llvm-svn: 128895
-
Owen Anderson authored
Convert ADCS and SBCS instructions into pseudos that are expanded to the ADC/ABC with the appropriate S-bit input value. llvm-svn: 128892
-
Jakob Stoklund Olesen authored
There can be multiple defs for a single virtual register when they are defining sub-registers. The missing <dead> flag was stopping the inline spiller from eliminating dead code after rematerialization. llvm-svn: 128888
-
Rafael Espindola authored
llvm-svn: 128887
-
Jakob Stoklund Olesen authored
This allows us to always keep the smaller slot for an instruction which is what we want when a register has early clobber defines. Drop the UsingInstrs set and the UsingBlocks map. They are no longer needed. llvm-svn: 128886
-
Nadav Rotem authored
space info. We crash with an assert in this case. This change checks that the address space of the bitcasted pointer is the same as the gep ptr. llvm-svn: 128884
-
Jakob Stoklund Olesen authored
llvm-svn: 128875
-
Jakob Stoklund Olesen authored
inlined path for the common case. Most basic blocks don't contain a call that may throw, so the last split point os simply the first terminator. llvm-svn: 128874
-
Bill Wendling authored
It needed to be moved closer to the setjmp statement, because the code directly after the setjmp needs to know about values that are on the stack. Also, the 'bitcast' of the function context was causing a dead load. This wouldn't be too horrible, except that at -O0 it wasn't optimized out, and because it wasn't using the correct base pointer (if there is a VLA), it would try to access a value from a garbage address. <rdar://problem/9130540> llvm-svn: 128873
-