- Oct 30, 2010
-
-
Chris Lattner authored
llvm-svn: 117817
-
Chris Lattner authored
llvm-svn: 117816
-
Chris Lattner authored
just remaps one mnemonic to another. Convert a few of the X86 aliases from .cpp to .td code. llvm-svn: 117815
-
Duncan Sands authored
it claiming not to have side-effects is no longer needed. llvm-svn: 117789
-
Jim Grosbach authored
llvm-svn: 117787
-
Jim Grosbach authored
llvm-svn: 117785
-
Duncan Sands authored
consider it to be readonly. In fact, don't even consider it to be readonly if it does a volatile load from an AllocaInst either (it is debatable as to whether readonly would be correct or not in this case; play safe for the moment). This fixes PR8279. llvm-svn: 117783
-
Jim Grosbach authored
llvm-svn: 117782
-
Chris Lattner authored
llvm-svn: 117773
-
Chris Lattner authored
llvm-svn: 117771
-
Chris Lattner authored
llvm-svn: 117769
-
Jim Grosbach authored
llvm-svn: 117766
-
Jakob Stoklund Olesen authored
llvm-svn: 117765
-
Jakob Stoklund Olesen authored
a basic block. llvm-svn: 117764
-
Jakob Stoklund Olesen authored
elsewhere. llvm-svn: 117763
-
Jakob Stoklund Olesen authored
llvm-svn: 117762
-
Jakob Stoklund Olesen authored
llvm-svn: 117761
-
Bob Wilson authored
There were a number of issues to fix up here: * The "device" argument of the llvm.memory.barrier intrinsic should be used to distinguish the "Full System" domain from the "Inner Shareable" domain. It has nothing to do with using DMB vs. DSB instructions. * The compiler should never need to emit DSB instructions. Remove the ARMISD::SYNCBARRIER node and also remove the instruction patterns for DSB. * Merge the separate DMB/DSB instructions for options only used for the disassembler with the default DMB/DSB instructions. Add the default "full system" option ARM_MB::SY to the ARM_MB::MemBOpt enum. * Add a separate ARMISD::MEMBARRIER_MCR node for subtargets that implement a data memory barrier using the MCR instruction. * Fix up encodings for these instructions (except MCR). I also updated the tests and added a few new ones to check for DMB options that were not currently being exercised. llvm-svn: 117756
-
Jim Grosbach authored
llvm-svn: 117753
-
Bill Wendling authored
conditional. Check for those instructions explicitly. llvm-svn: 117747
-
-
Jim Grosbach authored
llvm-svn: 117742
-
Jim Grosbach authored
llvm-svn: 117741
-
Jim Grosbach authored
llvm-svn: 117740
-
Jim Grosbach authored
encoder functions. llvm-svn: 117738
-
Evan Cheng authored
llvm-svn: 117737
-
Rafael Espindola authored
just .type foo,@object will produce an undefined reference to foo. On the other hand, a file with just .weakref bar, foo will not. It is somewhat hard to support both in MC since both statements should create the symbols. It should be possible if we really need to by adding to the flags, but hopefully that is not necessary. With this patch we do not produce a undefined reference in any of those cases. The assembly file needs an actual use for the undefined reference to be present. This is in preparation for a patch implementing .weakref. llvm-svn: 117735
-
Bob Wilson authored
llvm-svn: 117728
-
Bob Wilson authored
llvm-svn: 117727
-
Bob Wilson authored
llvm-svn: 117722
-
Bob Wilson authored
This code had previously used 2*N, where N is the mask length, to represent undef. That is not safe because the shufflevector operands may have more than N elements -- they don't have to match the result type. llvm-svn: 117721
-
Bob Wilson authored
llvm-svn: 117720
-
Bob Wilson authored
Allow splats even if they don't match either of the original shuffles, possibly due to undef entries in the shuffles masks. Radar 8597790. Also fix some 80-column violations. llvm-svn: 117719
-
- Oct 29, 2010
-
-
Jim Grosbach authored
llvm-svn: 117718
-
Jim Grosbach authored
the ARMExpandPseudos pass rather than during the asm lowering. llvm-svn: 117714
-
Eric Christopher authored
failure for llvm-gcc on arm fast isel. llvm-svn: 117710
-
Owen Anderson authored
Give up on doing in-line instruction simplification during correlated value propagation. Instruction simplification needs to be guaranteed never to be run on an unreachable block. However, earlier block simplifications may have changed the CFG to make block that were reachable when we began our iteration unreachable by the time we try to simplify them. (Note that this also means that our depth-first iterators were potentially being invalidated). This should not have a large impact on code quality, since later runs of instcombine should pick up these simplifications. Fixes PR8506. llvm-svn: 117709
-
Jim Grosbach authored
handle it in the asm lowering. llvm-svn: 117707
-
Jim Grosbach authored
llvm-svn: 117703
-
Jim Grosbach authored
llvm-svn: 117702
-