- Nov 03, 2010
-
-
Bill Wendling authored
vldr.64 d1, [r0, #-32] The problem was with how the addressing mode 5 encodes the offsets. This change makes sure that the way offsets are handled in addressing mode 5 is consistent throughout the MC code. It involves re-refactoring the "getAddrModeImmOpValue" method into an "Imm12" and "addressing mode 5" version. But not to worry! The majority of the duplicated code has been unified. llvm-svn: 118144
-
Jim Grosbach authored
parts. Represent the operation mode as an optional operand instead. rdar://8614429 llvm-svn: 118137
-
- Nov 02, 2010
-
-
Bill Wendling authored
with immediates up to 16-bits in size. The same logic is applied to other LDR encodings, e.g. VLDR, but which use a different immediate bit width (8-bits in VLDR's case). Removing the "12" allows it to be more generic. llvm-svn: 118094
-
Bill Wendling authored
llvm-svn: 117971
-
Bill Wendling authored
llvm-svn: 117969
-
- Nov 01, 2010
-
-
Bill Wendling authored
llvm-svn: 117956
-
Bill Wendling authored
*_Encode classes. These instructions are the only ones which use those classes, so a subclass isn't necessary. llvm-svn: 117906
-
- Oct 31, 2010
-
-
Chris Lattner authored
got a dulicated line). llvm-svn: 117860
-
Chris Lattner authored
llvm-svn: 117859
-
Chris Lattner authored
Instead of silently ignoring these instructions, emit a hard error and force the target author to either refactor the target or mark the instruction 'isCodeGenOnly'. Mark a few instructions in ARM and MBlaze as isCodeGenOnly the are doing this. llvm-svn: 117858
-
- Oct 30, 2010
-
-
Jim Grosbach authored
llvm-svn: 117787
-
- Oct 21, 2010
-
-
Bill Wendling authored
extension register. llvm-svn: 116970
-
Bill Wendling authored
registers. llvm-svn: 116961
-
- Oct 15, 2010
-
-
Bill Wendling authored
llvm-svn: 116625
-
- Oct 14, 2010
-
-
Bill Wendling authored
here. The f32 in FCONSTS is handled as a double instead of a float in the code. So the encoding of the immediate into the instruction isn't exactly in line with the documentation in that regard. But given that we know it's handled as a double, it doesn't cause any harm. llvm-svn: 116471
-
Bill Wendling authored
llvm-svn: 116466
-
Bill Wendling authored
- Add missing patterns for some multiply add/subtract instructions. - Add encodings for VMRS and VMSR. llvm-svn: 116464
-
- Oct 13, 2010
-
-
Bill Wendling authored
llvm-svn: 116431
-
Bill Wendling authored
just yet. llvm-svn: 116386
-
Bill Wendling authored
llvm-svn: 116385
-
Bill Wendling authored
llvm-svn: 116383
-
Bill Wendling authored
llvm-svn: 116379
-
Bill Wendling authored
llvm-svn: 116375
-
Bill Wendling authored
llvm-svn: 116370
-
Bill Wendling authored
to add 10+ lines to every instruction. It may turn out that we can move this base class into it's parent class. llvm-svn: 116362
-
Bill Wendling authored
Fear not! I'm going to try a refactoring right now. :) llvm-svn: 116359
-
Bill Wendling authored
llvm-svn: 116348
-
- Oct 12, 2010
-
-
Jim Grosbach authored
llvm-svn: 116338
-
- Oct 07, 2010
-
-
Evan Cheng authored
llvm-svn: 115898
-
- Sep 28, 2010
-
-
Eric Christopher authored
llvm-svn: 114931
-
- Sep 08, 2010
-
-
Jim Grosbach authored
llvm-svn: 113322
-
- Aug 28, 2010
-
-
Bob Wilson authored
all the other LDM/STM instructions. This fixes asm printer crashes when compiling with -O0. I've changed one of the NEON tests (vst3.ll) to run with -O0 to check this in the future. Prior to this change VLDM/VSTM used addressing mode #5, but not really. The offset field was used to hold a count of the number of registers being loaded or stored, and the AM5 opcode field was expanded to specify the IA or DB mode, instead of the standard ADD/SUB specifier. Much of the backend was not aware of these special cases. The crashes occured when rewriting a frameindex caused the AM5 offset field to be changed so that it did not have a valid submode. I don't know exactly what changed to expose this now. Maybe we've never done much with -O0 and NEON. Regardless, there's no longer any reason to keep a count of the VLDM/VSTM registers, so we can use addressing mode #4 and clean things up in a lot of places. llvm-svn: 112322
-
- Aug 11, 2010
-
-
Daniel Dunbar authored
for some reason they have a very odd MCInst form where the operands overlap, but I haven't dug in to find out why yet. llvm-svn: 110781
-
- Aug 03, 2010
-
-
Nate Begeman authored
Add support for using the FPSCR in conjunction with the vcvtr instruction, for controlling fp to int rounding. Add support for the FLT_ROUNDS_ node now that the FPSCR is exposed. llvm-svn: 110152
-
- Jun 02, 2010
-
-
Jim Grosbach authored
llvm-svn: 105350
-
- May 19, 2010
-
-
Evan Cheng authored
Mark pattern-less mayLoad / mayStore instructions neverHasSideEffects. These do not have other un-modeled side effects. llvm-svn: 104111
-
- May 13, 2010
-
-
Evan Cheng authored
llvm-svn: 103683
-
- Apr 07, 2010
-
-
Anton Korobeynikov authored
Define new itin classes for ARM <-> VFP reg moves to distinguish from NEON ops. Define proper scheduling itinerary for them on A9. A8 TRM does not specify latency for them at all :( llvm-svn: 100650
-
Anton Korobeynikov authored
llvm-svn: 100649
-
Anton Korobeynikov authored
llvm-svn: 100647
-