- Sep 16, 2010
-
-
Owen Anderson authored
Revert r114097, adding back in the assertion against replacing an Instruction by itself. Now that CorrelatedValuePropagation is more careful not to call SimplifyInstructionsInBlock() on an unreachable block, the issue has been fixed at a higher level. Add a big warning to SimplifyInstructionsInBlock() to hopefully prevent this in the future. llvm-svn: 114117
-
-
Rafael Espindola authored
same order as gnu as. llvm-svn: 114109
-
Owen Anderson authored
llvm-svn: 114106
-
Owen Anderson authored
to optimize unreachable blocks. llvm-svn: 114105
-
Dale Johannesen authored
walking the asm arguments once and stashing their Values. This is wrong because the same memory location can be in the list twice, and if the first one has a sunkaddr substituted, the stashed value for the second one will be wrong (use-after-free). PR 8154. llvm-svn: 114104
-
Owen Anderson authored
It is possible, under specific circumstances involving ptrtoint ConstantExpr's, for LVI to end up trying to merge a Constant into a ConstantRange. Handle this conservatively for now, rather than asserting. The testcase is more complex that I would like, but the manifestation of the problem is sensitive to iteration orders and the state of the LVI cache, and I have not been able to reproduce it with manually constructed or simplified cases. Fixes PR8162. llvm-svn: 114103
-
Jim Grosbach authored
llvm-svn: 114100
-
Jim Grosbach authored
llvm-svn: 114099
-
Jim Grosbach authored
(PICLDRB, et. al.) and PICSTR* llvm-svn: 114098
-
Owen Anderson authored
to replace an instruction with itself. Add a predicate to the simplifier to prevent this case. llvm-svn: 114097
-
Jim Grosbach authored
from the APFloat. llvm-svn: 114096
-
Rafael Espindola authored
llvm-svn: 114091
-
Rafael Espindola authored
llvm-svn: 114077
-
Kalle Raiskila authored
This cleans up after the mess r108567 left in the CellSPU backend. ORCvt-instruction were used to reinterpret registers, and the ORs were then removed by isMoveInstr(). This patch now removes 350 instrucions of format: or $3, $3, $3 (from the 52 testcases in CodeGen/CellSPU). One case of a nonexistant or is checked for. Some moves of the form 'ori $., $., 0' and 'ai $., $., 0' still remain. llvm-svn: 114074
-
Duncan Sands authored
Cameron Esfahani, tweaked to use array_lengthof. llvm-svn: 114073
-
Duncan Sands authored
with attribute warn_unused_result" here - suppress the warning harder. llvm-svn: 114072
-
Bob Wilson authored
used for anything. llvm-svn: 114067
-
Bob Wilson authored
instead of using default predicates on the expanded instructions. llvm-svn: 114066
-
Jim Grosbach authored
unnecessary dtor for MCOperand. llvm-svn: 114064
-
Daniel Dunbar authored
llvm-svn: 114051
-
Daniel Dunbar authored
order file on Darwin. llvm-svn: 114050
-
Bob Wilson authored
llvm-svn: 114048
-
Bob Wilson authored
register allocation to VLDMD and VSTMD respectively. This avoids using the dregpair operand modifier. llvm-svn: 114047
-
Owen Anderson authored
be possible to implement this very carefully to allow a lock-free implementation while still avoiding illegal interleavings, but I haven't been able to figure one out. llvm-svn: 114046
-
Jakob Stoklund Olesen authored
great deal because we don't have to worry about maintaining SSA form. Unconditionally copy back to dupli when the register is live out of the split range, even if the live-out value was defined outside the range. Skipping the back-copy only makes sense when the live range is going to spill outside the split range, and we don't know that it will. Besides, this was a hack to avoid SSA update issues. Clear up some confusion about the end point of a half-open LiveRange. Methinks LiveRanges need to be closed so both start and end are included in the range. The low bits of a SlotIndex are symbolic, so a half-open range doesn't really make sense. This would be a pervasive change, though. llvm-svn: 114043
-
Michael J. Spencer authored
llvm-svn: 114037
-
Owen Anderson authored
Since PassRegistry is currently a shared global object, it needs locking. While it might intuitively seem that all the setup of this class currently happens at static initialization time, this misses the fact that some later events can cause mutation of the PassRegistrationListeners list, and thus cause race issues. llvm-svn: 114036
-
Michael J. Spencer authored
llvm-svn: 114032
-
Jim Grosbach authored
llvm-svn: 114030
-
- Sep 15, 2010
-
-
Jim Grosbach authored
precision) llvm-svn: 114028
-
Rafael Espindola authored
The ELF implementation now creates text, data and bss to match the gnu as behavior. The text streamer still has the old MachO specific behavior since the testsuite checks that it will error when a directive is given before a setting the current section for example. A nice benefit is that -n is not required anymore when producing ELF files. llvm-svn: 114027
-
Jakob Stoklund Olesen authored
llvm-svn: 114026
-
Jakob Stoklund Olesen authored
llvm-svn: 114025
-
Jim Grosbach authored
moves. Previously, the immediate was printed as the encoded integer value, which is incorrect. llvm-svn: 114021
-
Jim Grosbach authored
functions in ARMBaseInfo.h so it can be used in the MC library as well. For anything bigger than this, we may want a means to have a small support library for shared helper functions like this. Cross that bridge when we come to it. llvm-svn: 114016
-
Eli Friedman authored
targets. llvm-svn: 114015
-
Jim Grosbach authored
merge the common cases. llvm-svn: 114013
-
Jim Grosbach authored
if the register is a member of the SPR register class directly instead. llvm-svn: 114012
-
Jim Grosbach authored
llvm-svn: 114009
-