- Sep 21, 2011
-
-
Akira Hatanaka authored
llvm-svn: 140233
-
Akira Hatanaka authored
Check if architecture & ABI combination is valid. llvm-svn: 140230
-
Akira Hatanaka authored
llvm-svn: 140229
-
Owen Anderson authored
In the disassembler C API, be careful not to confuse the comment streamer that the disassembler outputs annotations on with the streamer that the InstPrinter will print them on. llvm-svn: 140217
-
Akira Hatanaka authored
llvm-svn: 140214
-
- Sep 20, 2011
-
-
Akira Hatanaka authored
llvm-svn: 140178
-
- Sep 19, 2011
-
-
Akira Hatanaka authored
yet legal according to comments in LegalizeDAG.cpp:227. Memcpy nodes created for copying byval arguments are inserted before CALLSEQ_START. The two failing tests reported in PR10876 pass after applying this patch. llvm-svn: 140046
-
- Sep 16, 2011
-
-
Owen Anderson authored
Don't attach annotations to MCInst's. Instead, have the disassembler return, and the printer accept, an annotation string which can be passed through if the client cares about annotations. llvm-svn: 139876
-
- Sep 14, 2011
-
-
Akira Hatanaka authored
llvm-svn: 139699
-
Bruno Cardoso Lopes authored
- Add TSFlags for the instruction formats. The idea here is to use as much encoding as possible from getBinaryCodeForInstr, and having TSFLags formats for that would make it easier to encode most part of the instructions (since Mips encodings are pretty straightforward) - Improve the mips mechanism for compilation callback - Add Mips specific code for invalidating the instruction cache - Next patch will address wrong tablegen encoding Commit msg added by my own but the patch is from Sasa Stankovic. llvm-svn: 139688
-
- Sep 13, 2011
-
-
Akira Hatanaka authored
tries to match a dead MipsLo node (explanation in the link below). http://article.gmane.org/gmane.comp.compilers.llvm.devel/42757/match=dagcombiner+dead llvm-svn: 139634
-
Akira Hatanaka authored
llvm-svn: 139622
-
Akira Hatanaka authored
llvm-svn: 139607
-
- Sep 10, 2011
-
-
Akira Hatanaka authored
llvm-svn: 139421
-
Akira Hatanaka authored
llvm-svn: 139420
-
- Sep 09, 2011
-
-
Akira Hatanaka authored
llvm-svn: 139412
-
Akira Hatanaka authored
llvm-svn: 139405
-
Akira Hatanaka authored
llvm-svn: 139383
-
Akira Hatanaka authored
removing support for Mips1 and Mips2. This change and the ones that follow have been discussed with and approved by Bruno. llvm-svn: 139344
-
Akira Hatanaka authored
llvm-svn: 139339
-
- Sep 07, 2011
-
-
James Molloy authored
Refactor instprinter and mcdisassembler to take a SubtargetInfo. Add -mattr= handling to llvm-mc. Reviewed by Owen Anderson. llvm-svn: 139237
-
- Sep 06, 2011
-
-
Duncan Sands authored
with a vector condition); such selects become VSELECT codegen nodes. This patch also removes VSETCC codegen nodes, unifying them with SETCC nodes (codegen was actually often using SETCC for vector SETCC already). This ensures that various DAG combiner optimizations kick in for vector comparisons. Passes dragonegg bootstrap with no testsuite regressions (nightly testsuite as well as "make check-all"). Patch mostly by Nadav Rotem. llvm-svn: 139159
-
- Aug 31, 2011
-
-
Akira Hatanaka authored
llvm-svn: 138866
-
- Aug 30, 2011
-
-
James Molloy authored
llvm-svn: 138796
-
- Aug 29, 2011
-
-
Eli Friedman authored
llvm-svn: 138751
-
- Aug 24, 2011
-
-
Evan Cheng authored
These are strictly utilities for registering targets and components. llvm-svn: 138450
-
- Aug 23, 2011
-
-
Evan Cheng authored
from MC. llvm-svn: 138367
-
- Aug 20, 2011
-
-
Akira Hatanaka authored
needed for Mips32. llvm-svn: 138132
-
- Aug 19, 2011
-
-
Akira Hatanaka authored
piece of it) that is being passed by value is smaller than a word. llvm-svn: 138007
-
- Aug 18, 2011
-
-
Akira Hatanaka authored
anonymous namespace. llvm-svn: 137975
-
Bruno Cardoso Lopes authored
llvm-svn: 137943
-
Akira Hatanaka authored
llvm-svn: 137892
-
- Aug 17, 2011
-
-
Akira Hatanaka authored
llvm-svn: 137848
-
Akira Hatanaka authored
llvm-svn: 137831
-
Akira Hatanaka authored
llvm-svn: 137804
-
- Aug 16, 2011
-
-
Akira Hatanaka authored
Mips1 does not support double precision loads or stores, therefore two single precision loads or stores must be used in place of these instructions. This patch treats double precision loads and stores as if they are legal instructions until MCInstLowering, instead of generating the single precision instructions during instruction selection or Prolog/Epilog code insertion. Without the changes made in this patch, llc produces code that has the same problem described in r137484 or bails out when MipsInstrInfo::storeRegToStackSlot or loadRegFromStackSlot is called before register allocation. llvm-svn: 137711
-
Akira Hatanaka authored
llvm-svn: 137707
-
Akira Hatanaka authored
llvm-svn: 137706
-
- Aug 12, 2011
-
-
Akira Hatanaka authored
llvm-svn: 137515
-
Akira Hatanaka authored
integer register to a floating point register. It is not valid to interpret the value of a floating pointer register as part of a double precision floating point value after a single precision floating point computational or move instruction stores its result to the register. - In the test case, the following code is generated before this patch is applied: mtc1 $zero, $f2 ; unformatted copy to $f2 mov.s $f0, $f2 ; $f0 is in single format sdc1 $f12, 0($sp) mov.s $f1, $f2 ; $f1 is in single format c.eq.d $f12, $f0 ; $f0 cannot be interpreted as double - The following code is generated after this patch is applied: mtc1 $zero, $f0 ; unformatted copy to $f0 mtc1 $zero, $f1 ; unformatted copy to $f1 c.eq.d $f12, $f0 ; $f0 can be interpreted as double Bhanu Chetlapalli and Chris Dearman at MIPS technologies reported this bug and provided the test case. llvm-svn: 137484
-