| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
vector type (vectors of size 3). Also included test cases.
llvm-svn: 129074
|
|
|
|
|
|
| |
tokenization to crash and burn.
llvm-svn: 129051
|
|
|
|
|
|
| |
rdar://problem/9246844
llvm-svn: 129050
|
|
|
|
|
|
|
|
|
|
|
| |
is equivalent to any other relevant value; it isn't true in general.
If it is equivalent, the LoopPromoter will tell the AST the equivalence.
Also, delete the PreheaderLoad if it is unused.
Chris, since you were the last one to make major changes here, can you check
that this is sane?
llvm-svn: 129049
|
|
|
|
|
|
|
|
|
|
| |
checking for register values
for USAD8 and USADA8.
rdar://problem/9247060
llvm-svn: 129047
|
|
|
|
| |
llvm-svn: 129045
|
|
|
|
| |
llvm-svn: 129044
|
|
|
|
|
|
| |
rdar://problem/9246650
llvm-svn: 129042
|
|
|
|
| |
llvm-svn: 129041
|
|
|
|
| |
llvm-svn: 129040
|
|
|
|
|
|
| |
folded comparisons, just like ADD and SUB.
llvm-svn: 129038
|
|
|
|
| |
llvm-svn: 129036
|
|
|
|
|
|
| |
values also.
llvm-svn: 129035
|
|
|
|
| |
llvm-svn: 129034
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ARM disassembler should reject invalid (type, align) encodings as invalid instructions.
So, instead of:
Opcode=1641 Name=VST2b32_UPD Format=ARM_FORMAT_NLdSt(30)
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
-------------------------------------------------------------------------------------------------
| 1: 1: 1: 1| 0: 1: 0: 0| 0: 0: 0: 0| 0: 0: 1: 1| 0: 0: 0: 0| 1: 0: 0: 1| 1: 0: 1: 1| 0: 0: 1: 1|
-------------------------------------------------------------------------------------------------
vst2.32 {d0, d2}, [r3, :256], r3
we now have:
Opcode=1641 Name=VST2b32_UPD Format=ARM_FORMAT_NLdSt(30)
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
-------------------------------------------------------------------------------------------------
| 1: 1: 1: 1| 0: 1: 0: 0| 0: 0: 0: 0| 0: 0: 1: 1| 0: 0: 0: 0| 1: 0: 0: 1| 1: 0: 1: 1| 0: 0: 1: 1|
-------------------------------------------------------------------------------------------------
mc-input.txt:1:1: warning: invalid instruction encoding
0xb3 0x9 0x3 0xf4
^
llvm-svn: 129033
|
|
|
|
| |
llvm-svn: 129032
|
|
|
|
|
|
| |
blocks with interference.
llvm-svn: 129030
|
|
|
|
|
|
|
| |
Without any positive bias, there is nothing for the spill placer to to. It will
spill everywhere.
llvm-svn: 129029
|
|
|
|
|
|
|
|
|
|
| |
Since these "Advanced SIMD and VFP" instructions have more specfic encoding bits
specified, if coproc == 10 or 11, we should reject the insn as invalid.
rdar://problem/9239922
rdar://problem/9239596
llvm-svn: 129027
|
|
|
|
| |
llvm-svn: 129025
|
|
|
|
| |
llvm-svn: 129024
|
|
|
|
|
|
| |
If there are no positive nodes, the algorithm can be aborted early.
llvm-svn: 129021
|
|
|
|
|
|
|
|
| |
addConstraints, and finish.
This will allow us to abort the algorithm early if it is determined to be futile.
llvm-svn: 129020
|
|
|
|
|
|
|
|
|
| |
Also set the encoding bits (for A8.6.303, A8.6.328, A8.6.329) Inst{3-0} = 0b0000,
in class NVLaneOp.
rdar://problem/9240648
llvm-svn: 129015
|
|
|
|
| |
llvm-svn: 129012
|
|
|
|
|
|
| |
Change the test to force a sign extension and expose the problem again.
llvm-svn: 129011
|
|
|
|
|
|
| |
Keep track of llvm.dbg.value intrinsics with non null values.
llvm-svn: 129010
|
|
|
|
|
|
| |
This takes the linking of libxul on linux from 6m54.931s to 5m39.840s.
llvm-svn: 129009
|
|
|
|
| |
llvm-svn: 129002
|
|
|
|
|
|
| |
DenseMap.
llvm-svn: 128994
|
|
|
|
| |
llvm-svn: 128988
|
|
|
|
| |
llvm-svn: 128986
|
|
|
|
|
|
|
|
| |
About 90% of the relevant blocks are live-through without uses, and the only
information required about them is their number. This saves memory and enables
later optimizations that need to look at only the use-blocks.
llvm-svn: 128985
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
imp-def of CPSR it was adding.
llvm-svn: 128965
|
|
|
|
| |
llvm-svn: 128964
|
|
|
|
| |
llvm-svn: 128963
|
|
|
|
| |
llvm-svn: 128962
|
|
|
|
|
|
| |
Treat the landing pad as a normal successor when that happens.
llvm-svn: 128961
|
|
|
|
| |
llvm-svn: 128959
|
|
|
|
|
|
|
|
|
|
| |
illegal register
encodings for DisassembleArithMiscFrm().
rdar://problem/9238659
llvm-svn: 128958
|
|
|
|
| |
llvm-svn: 128953
|
|
|
|
| |
llvm-svn: 128951
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 128947
|
|
|
|
| |
llvm-svn: 128946
|
|
|
|
|
|
|
|
| |
Added checks for regs which should not be 15.
rdar://problem/9237734
llvm-svn: 128945
|
|
|
|
|
|
| |
still used by RegionInfo :(
llvm-svn: 128943
|
|
|
|
|
|
|
|
|
| |
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
|