- May 29, 2003
-
-
Chris Lattner authored
llvm-svn: 6400
-
Chris Lattner authored
new test llvm-svn: 6399
-
Chris Lattner authored
llvm-svn: 6398
-
Chris Lattner authored
llvm-svn: 6397
-
Chris Lattner authored
* Make the function inliner _significantly_ smarter. :) llvm-svn: 6396
-
Chris Lattner authored
should be implicit. llvm-svn: 6395
-
Chris Lattner authored
llvm-svn: 6394
-
Chris Lattner authored
llvm-svn: 6393
-
Misha Brukman authored
exit code. This, in turn, makes an empty file SparcV9CodeEmitter.inc, and only much later, produces a link error because the key function that TableGen creates isn't found. Using a temporary file in the middle forces a good .INC file to be generated by TableGen, and it will keep trying until you fix the input file. llvm-svn: 6392
-
Misha Brukman authored
llvm-svn: 6391
-
Misha Brukman authored
llvm-svn: 6390
-
Misha Brukman authored
Also, added a rule to delete the generated .inc file on `make clean'. llvm-svn: 6389
-
Misha Brukman authored
* Added some Format 4 classes, but not instructions * Added notes on missing sections with FIXMEs * Added RDCCR instr llvm-svn: 6388
-
- May 28, 2003
-
-
Misha Brukman authored
llvm-svn: 6387
-
Misha Brukman authored
llvm-svn: 6386
-
Misha Brukman authored
llvm-svn: 6385
-
Misha Brukman authored
list (rd, rs1, imm), in that order (bit-wise), the actual assembly syntax is instr rd, imm, rs1, and that is how they are constructed in the instruction selector. This fixes the discrepancy. Also fixed some comments along the same lines and fixed page numbers referring to where instructions are described in the Sparc manual. llvm-svn: 6384
-
Brian Gaeke authored
llvm-svn: 6383
-
Vikram S. Adve authored
-- setCC of FP type used by a Phi: have to save in reg. -- setNE of FP type used by a branch: cannot use result directly in branch! -- setCC used outside the same basic block: have to save in reg. for now llvm-svn: 6382
-
Misha Brukman authored
llvm-svn: 6381
-
Misha Brukman authored
changed. llvm-svn: 6380
-
Misha Brukman authored
and passes the real code to a memory-outputting code emitter. This may be removed at a later point in development. llvm-svn: 6379
-
Misha Brukman authored
MachineInstr can later be patched up correctly. llvm-svn: 6378
-
Misha Brukman authored
llvm-svn: 6377
-
Misha Brukman authored
Non-obvious change: since I have changed ST and STD to be STF and STDF to (a) closer resemble their name (NOT assembly text) in the Sparc manual, and (b) clearly specify that they they are floating-point opcodes, I made the same changes in this file. llvm-svn: 6376
-
Misha Brukman authored
Here I had to make one non-trivial change: add a function to get a version of the opcode that takes an immediate, given an opcode that takes all registers. This is required because sometimes it is not known at construction time which opcode is used because opcodes are passed around between functions. llvm-svn: 6375
-
Misha Brukman authored
llvm-svn: 6373
-
Misha Brukman authored
llvm-svn: 6372
-
Misha Brukman authored
annotations on instructions to specify which format they are (i.e., do they take 2 registers and 1 immediate or just 3 registers) as that changes their binary representation and hence, code emission. This makes instructions more like how X86 defines them to be. Now, writers of instruction selection must choose the correct opcode based on what instruction type they are building, which they already know. Thus, the JIT doesn't have to do the same work by `discovering' which operands an instruction really has. As this involves lots of small changes to a lot of files in lib/target/Sparc, I'll commit them individually because otherwise the diffs will be unreadable. llvm-svn: 6371
-
Misha Brukman authored
specified as a static member in class definition. llvm-svn: 6370
-
Misha Brukman authored
a default value is set in the header file. * Fixed some code layout to make it more consistent with the rest of codebase * Added addPassesToJITCompile() with relevant passes llvm-svn: 6369
-
Misha Brukman authored
* For debugging purposes: + output the predefined bit pattern of the instruction * Fixed inefficiency: only load an operand from MachineInstr once * Bug fix: did not advance bit index when seeing named bit-fields "annul", "cc" and "predict" * Added a catch-all for non-supported instructions at the end of switch stmt. llvm-svn: 6368
-
Misha Brukman authored
that Makefile.common would see it. llvm-svn: 6367
-
Misha Brukman authored
Also, added annotations to how instructions are modified (reg/imm operands). Added prototype for adding register numbers to values pass for interfacing with the target-independent register allocators in the JIT. llvm-svn: 6366
-
- May 27, 2003
-
-
Misha Brukman authored
and to memory to test execution (using a passed-in code emitter). llvm-svn: 6365
-
Misha Brukman authored
llvm-svn: 6364
-
Misha Brukman authored
MachineCodeEmitter to make a pass-through debugger -- output to memory and to std::cerr. llvm-svn: 6363
-
Chris Lattner authored
llvm-svn: 6362
-
Misha Brukman authored
of Sparc JIT (printing out instrs) on X86. Con: this increases linking time. llvm-svn: 6361
-
Misha Brukman authored
`lli -march=x86' or `lli -march=sparc' will forcefully select the JIT even on a different platform. Running lli without the -march option will select the JIT for the platform that it's currently running on. Pro: can test Sparc JIT (debug printing mode) on X86 -- faster to compile/link LLVM source base to test changes. Con: Linking lli on x86 now pulls in all the Sparc libs -> longer link time (but X86 can bear it, right?) In the future, perhaps this should be a ./configure option to enable/disable target JITting... llvm-svn: 6360
-