- Dec 07, 2011
-
-
Jim Grosbach authored
For example, ARM allows: vmov.u32 s4, #0 -> vmov.i32, #0 'u32' is a more specific designator for the 32-bit integer type specifier and is legal for any instruction which accepts 'i32' as a datatype suffix. We want to say, def : TokenAlias<".u32", ".i32">; This works by marking the match class of 'From' as a subclass of the match class of 'To'. rdar://10435076 llvm-svn: 145992
-
Jakub Staszak authored
llvm-svn: 145991
-
Daniel Dunbar authored
multiple components. llvm-svn: 145989
-
Anshuman Dasgupta authored
llvm-svn: 145988
-
- Dec 06, 2011
-
-
Jakob Stoklund Olesen authored
This caused more offset errors. llvm-svn: 145980
-
Jakub Staszak authored
llvm-svn: 145979
-
-
Bill Wendling authored
llvm-svn: 145976
-
Evan Cheng authored
1. Added opcode BUNDLE 2. Taught MachineInstr class to deal with bundled MIs 3. Changed MachineBasicBlock iterator to skip over bundled MIs; added an iterator to walk all the MIs 4. Taught MachineBasicBlock methods about bundled MIs llvm-svn: 145975
-
Jim Grosbach authored
llvm-svn: 145974
-
Jakob Stoklund Olesen authored
This pseudo-instruction contains a .align directive in its expansion, so the total size may vary by 2 bytes. It is too difficult to accurately keep track of this alignment directive, just use the worst-case size instead. llvm-svn: 145971
-
Jakob Stoklund Olesen authored
ARMConstantIslandPass may sometimes leave empty constant islands behind (it really shouldn't). Remove the alignment from the empty islands so the size calculations are still correct. This should fix the many Thumb1 assembler errors in the nightly test suite. The reduced test case for this problem is way too big. That is to be expected for ARMConstantIslandPass bugs. <rdar://problem/10534709> llvm-svn: 145970
-
Bill Wendling authored
llvm-svn: 145969
-
Bill Wendling authored
* Rename variables to reflect what they're actually used for. llvm-svn: 145968
-
Jakob Stoklund Olesen authored
llvm-svn: 145965
-
Jakub Staszak authored
llvm-svn: 145964
-
Hal Finkel authored
llvm-svn: 145963
-
Hal Finkel authored
llvm-svn: 145962
-
Hal Finkel authored
llvm-svn: 145961
-
Hal Finkel authored
llvm-svn: 145960
-
Bill Wendling authored
llvm-svn: 145954
-
Bill Wendling authored
llvm-svn: 145952
-
Justin Holewinski authored
llvm-svn: 145947
-
Justin Holewinski authored
llvm-svn: 145946
-
Sebastian Pop authored
llvm-svn: 145944
-
Sebastian Pop authored
llvm-svn: 145943
-
Benjamin Kramer authored
- Walking over pred_begin/pred_end is an expensive operation. - PHINodes contain a value for each predecessor anyway. - While it may look like we used to save a few iterations with the set, be aware that getIncomingValueForBlock does a linear search on the values of the phi node. - Another -5% on ARMDisassembler.cpp (Release build). This was the last entry in the profile that was obviously wasting time. llvm-svn: 145937
-
Benjamin Kramer authored
llvm-svn: 145934
-
Craig Topper authored
llvm-svn: 145929
-
Craig Topper authored
Fix a bunch of SSE/AVX patterns to use v2i64/v4i64 loads since all other integer vector loads are promoted to those. llvm-svn: 145927
-
Craig Topper authored
llvm-svn: 145926
-
NAKAMURA Takumi authored
FIXME: Restore more other arch-dependent MachO tests. (eg. r126401 and r133856) llvm-svn: 145925
-
Craig Topper authored
Clean up some of the shuffle decoding code for UNPCK instructions. Add instruction commenting for AVX/AVX2 forms for integer UNPCKs. llvm-svn: 145924
-
Jim Grosbach authored
Same as r145922, just for ARM mode. llvm-svn: 145923
-
Jim Grosbach authored
Fix the alias to encode 'mul r5, r6' as if it were 'mul r5, r6, r5' so we match gas. rdar://10532439 llvm-svn: 145922
-
Craig Topper authored
Merge isSHUFPMask and isCommutedSHUFPMask into single function that can do both. Do the same for the 256-bit version. Use loops to reduce size of isVSHUFPYMask. Fix test cases that were incorrectly passing due to isCommutedSHUFPMask not checking for the vector being 128-bit. This caused some 256-bit shuffles to be incorrectly commuted. llvm-svn: 145921
-
Jim Grosbach authored
Using encoding T1 for offset of #0 and encoding T2 for #-0. rdar://10532413 llvm-svn: 145919
-
NAKAMURA Takumi authored
MC/MachO assumes x86. llvm-svn: 145916
-
Dan Gohman authored
recent discussions. Poison can't make every value that depends on it act in maximally undefined ways, because the optimizer may still hoist code following the usual rules for undef. Make Poison invoke its full undefined behavior only when it reaches an instruction with externally visible side effects. llvm-svn: 145913
-
Bruno Cardoso Lopes authored
llvm-svn: 145912
-