- Jul 30, 2011
-
-
Bill Wendling authored
r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444, r136445, r136446, r136253 pending review. llvm-svn: 136556
-
Sean Callanan authored
llvm-svn: 136552
-
Jakob Stoklund Olesen authored
The ARM target depends on CPSR liveness being tracked after register allocation. llvm-svn: 136548
-
Jakob Stoklund Olesen authored
This includes registers like EFLAGS and ST0-ST7. We don't check for liveness issues in the verifier and scavenger because registers will never be allocated from these classes. While in SSA form, we do care about the liveness of unallocatable unreserved registers. Liveness of EFLAGS and ST0 neds to be correct for MachineDCE and MachineSinking. llvm-svn: 136541
-
Jakob Stoklund Olesen authored
llvm-svn: 136535
-
Jakob Stoklund Olesen authored
This flag is true from isel to register allocation when the machine function is required to be in SSA form. The TwoAddressInstructionPass and PHIElimination passes clear the flag. The SSA flag wil be used by the machine code verifier to check for SSA form, and eventually an assertion can enforce it in +Asserts builds. This will catch the common target error of creating machine code with multiple defs of a virtual register. llvm-svn: 136532
-
Jakub Staszak authored
llvm-svn: 136529
-
Jakob Stoklund Olesen authored
This helps generate better code in functions with high register pressure. llvm-svn: 136528
-
- Jul 29, 2011
-
-
Eric Christopher authored
Fixes rdar://9866494 llvm-svn: 136523
-
Chris Lattner authored
llvm-svn: 136510
-
Jim Grosbach authored
Fix the instruction encoding for operands. Refactor mode to use explicit instruction definitions per FIXME to be more consistent with loads/stores. Fix disassembler accordingly. Add tests. llvm-svn: 136509
-
Chandler Carruth authored
for targets that don't have an MC-ized disassembler. I'm suspicious that this shouldn't actually be happening, but hoping to fix the CMake build on macs first, and investigate why second. llvm-svn: 136508
-
Jakub Staszak authored
llvm-svn: 136506
-
Jim Grosbach authored
llvm-svn: 136505
-
Devang Patel authored
llvm-svn: 136503
-
Jakub Staszak authored
llvm-svn: 136502
-
Devang Patel authored
llvm-svn: 136480
-
Jim Grosbach authored
Fill in the missing fixed bits and the register operand bits of the instruction encoding. Refactor the definition to make the mode explicit, which is consistent with how loads and stores are normally represented and makes parsing much easier. Add parsing aliases for pseudo-instruction variants. Update the disassembler for the new representations. Add tests for parsing and encoding. llvm-svn: 136479
-
Nick Lewycky authored
llvm-svn: 136477
-
Jim Grosbach authored
llvm-svn: 136475
-
Jim Grosbach authored
llvm-svn: 136473
-
Jim Grosbach authored
llvm-svn: 136470
-
Jim Grosbach authored
llvm-svn: 136468
-
Nick Lewycky authored
screwy things by setting PWD != getcwd(). For example, some developers I know will use this to control the value in gcc's DW_AT_comp_dir value in debug output. With this patch, that trick will now work on clang too. The only other effect of this change is that the static analysis will now respect $PWD when reporting the directory of the files in its HTML output. I think that's fine. llvm-svn: 136459
-
Nick Lewycky authored
lines. No functionality change. llvm-svn: 136458
-
Eli Friedman authored
working on x86 (at least for trivial testcases); other architectures will need more work so that they actually emit the appropriate instructions for orderings stricter than 'monotonic'. (As far as I can tell, the ARM, PPC, Mips, and Alpha backends need such changes.) llvm-svn: 136457
-
Jakub Staszak authored
rounding errors. llvm-svn: 136456
-
Chandler Carruth authored
First off, only depend on the actual MC-ized disassemblers in the targets, not all of the libraries those in turn depend on. Second off, only depend on those MC-ized disassemblers for targets we're building. This should fix builds of fewer than all targets. llvm-svn: 136455
-
Bruno Cardoso Lopes authored
on the second half must be reindexed. llvm-svn: 136454
-
Bruno Cardoso Lopes authored
generation to always catch the weird cases. llvm-svn: 136453
-
Bruno Cardoso Lopes authored
llvm-svn: 136452
-
Bruno Cardoso Lopes authored
llvm-svn: 136451
-
Bruno Cardoso Lopes authored
undef mask elements. This fixes PR10529. llvm-svn: 136450
-
Bruno Cardoso Lopes authored
Also tidy up code a bit. llvm-svn: 136449
-
Bruno Cardoso Lopes authored
Also make PALIGNR masks to don't match 256-bits, which isn't supported It's also a step to solve PR10489 llvm-svn: 136448
-
Bill Wendling authored
With this, we can now compile a simple EH program. llvm-svn: 136446
-
Bill Wendling authored
llvm-svn: 136445
-
Bill Wendling authored
llvm-svn: 136444
-
Jakob Stoklund Olesen authored
Later passes /are/ using this information when running the register scavenger. This fixes the second problem in PR10520. llvm-svn: 136440
-
Jakob Stoklund Olesen authored
This hidden llc option runs the machine code verifier after expanding ARM pseudo-instructions, but before if-conversion. The machine code verifier is much better at pointing out liveness errors that can trip up the register scavenger. llvm-svn: 136439
-