Misha Brukman
b34fcdaa46
Class F2_1 already inherits the imm22 field from class F2
...
llvm-svn: 17001
2004-10-14 22:32:24 +00:00
Misha Brukman
7183fc3a84
Generate the SparcV8 code emitter from .td files
...
llvm-svn: 17000
2004-10-14 21:57:19 +00:00
Misha Brukman
98ebcd88f2
* In the F3_1 class, default asi to 0 because it's not currently used
...
* In the F3_3 class, remove mention of asi because it's not part of the format
llvm-svn: 16999
2004-10-14 21:53:39 +00:00
Misha Brukman
692979c1e2
* We don't use the ENABLE_*_JIT flags in the source base anymore
...
* Convert references to Sparc to SparcV9 to clearly identify CPU type
llvm-svn: 16998
2004-10-14 20:06:36 +00:00
Chris Lattner
5d33e8e73a
Fix a bug John tracked down in libstdc++ where we were incorrectly deleting
...
weak functions. Thanks for finding this John!
llvm-svn: 16997
2004-10-14 19:53:50 +00:00
Brian Gaeke
1f864b5583
Add FSTOI, FDTOI (fp to integer cast) instructions.
...
llvm-svn: 16996
2004-10-14 19:39:35 +00:00
Brian Gaeke
1519c24cff
Rewrite emitCastOperation, refactoring parts of it into emitIntegerCast, and
...
adding emitFPToIntegerCast.
llvm-svn: 16995
2004-10-14 19:39:34 +00:00
Brian Gaeke
38a4dd3d15
Add list of libc procedures we'll use, at some point.
...
Update list of currently failing tests.
ADJCALLSTACK* support is done.
llvm-svn: 16994
2004-10-14 19:39:33 +00:00
Misha Brukman
f9898d7189
Use the shared Makefile.JIT for JIT-enablement, which also enables the examples
...
to have the JIT functioning on more platforms than just x86
llvm-svn: 16993
2004-10-14 19:02:13 +00:00
Misha Brukman
7c169be339
Use the shared Makefile.JIT for JIT-enablement
...
llvm-svn: 16992
2004-10-14 19:01:25 +00:00
Misha Brukman
c04ade7c4f
Add Makefile.JIT to the list of Makefiles transferred to the build dir to give
...
tools and examples a simple way to JIT-enable themselves
llvm-svn: 16991
2004-10-14 18:59:42 +00:00
Misha Brukman
e62f4dd7b9
Transfer Makefile.JIT into the build tree for JIT-enabling tools and examples
...
llvm-svn: 16990
2004-10-14 18:59:09 +00:00
Misha Brukman
68baa6a7a9
Since several tools and examples want JIT support, factor out the process of
...
adding the right libs for any given architecture's JIT into a single place
llvm-svn: 16989
2004-10-14 18:58:19 +00:00
Misha Brukman
9372c95fde
Convert tabs to spaces
...
llvm-svn: 16988
2004-10-14 18:47:56 +00:00
Chris Lattner
eb6b8e5772
Make sure any client of Dominators.h links in Dominators.cpp
...
Patch by Morten Ofstad
llvm-svn: 16987
2004-10-14 15:47:16 +00:00
Chris Lattner
36e629a3ea
Make sure any client of Dominators.h links in Dominators.cpp
...
llvm-svn: 16986
2004-10-14 15:46:59 +00:00
Chris Lattner
52a126cb3e
Do not use the same variable name for two different variables in the
...
same scope. This confused VC++ (and probably people too!). Patch by
Morten Ofstad!
llvm-svn: 16985
2004-10-14 14:59:16 +00:00
Chris Lattner
645d8c2863
Remove unneeded typedef, patch by Morten Ofstad
...
llvm-svn: 16984
2004-10-14 14:51:09 +00:00
Misha Brukman
1f596c3358
* Claim to support machine code emission - return false from
...
addPassesToEmitMachineCode()
* Add support for registers and constants in getMachineOpValue()
This enables running "int main() { ret 0 }" via the PowerPC JIT.
llvm-svn: 16983
2004-10-14 06:39:56 +00:00
Misha Brukman
789587f128
Enable the PowerPC JIT by compiling powerpc.o library into lli
...
llvm-svn: 16982
2004-10-14 06:35:11 +00:00
Misha Brukman
8b1bf4323f
* Include the real (generated) version of getBinaryCodeForInstr()
...
* Add implementation of getMachineOpValue() for generated code emitter
* Convert assert()s in unimplemented functions to abort()s so that non-debug
builds fail predictably
* Add file header comments
llvm-svn: 16981
2004-10-14 06:07:25 +00:00
Misha Brukman
c2d6aaeaa0
* Make a PPC32-specific code emitter because we have separate classes for 32-
...
and 64-bit code emitters that cannot share code unless we use virtual
functions
* Identify components being built by tablegen with more detail by assigning them
to PowerPC, PPC32, or PPC64 more specifically; also avoids seeing 'building
PowerPC XYZ' messages twice, where one is for PPC32 and one for PPC64
llvm-svn: 16980
2004-10-14 06:04:56 +00:00
Tanya Lattner
d38a7605d8
Checking in code that works on my simple test case. However, there is still a bug with branches that I need to fix.
...
llvm-svn: 16979
2004-10-14 06:04:28 +00:00
Misha Brukman
189f3dc8d2
There is only one field in an instruction, and that is `Inst', the final view of
...
the instruction binary format, all others are simply operands and should not
have the `field' label
llvm-svn: 16978
2004-10-14 05:55:37 +00:00
Misha Brukman
d6ac8f5e5a
PowerPC instruction definitions use LittleEndian-style encoding [0..31]
...
llvm-svn: 16977
2004-10-14 05:54:38 +00:00
Misha Brukman
dba1f62eb8
Add isLittleEndianEncoding to InstrInfo class, defaults to `off'
...
llvm-svn: 16976
2004-10-14 05:53:40 +00:00
Misha Brukman
8393c15b28
* Factor out (into new fn) a loop emitting operand shifts into the instruction
...
* Reverse instruction bit components for a LittleEndian-style encoding
* Fix some comments and spacing
llvm-svn: 16975
2004-10-14 05:53:01 +00:00
Misha Brukman
243ded5e1a
* Add option to read isLittleEndianEncoding for InstrInfo classes
...
* Doxygen-ify some function comments
llvm-svn: 16974
2004-10-14 05:50:43 +00:00
Chris Lattner
45c35b1d1f
When converting phi nodes into select instructions, we shouldn't promote PHI
...
nodes unless we KNOW that we are able to promote all of them.
This fixes: test/Regression/Transforms/SimplifyCFG/PhiNoEliminate.ll
llvm-svn: 16973
2004-10-14 05:13:36 +00:00
Chris Lattner
6299141c4e
When converting phi nodes into select instructions, we shouldn't promote PHI
...
nodes unless we KNOW that we are able to promote all of them. In this case
promoting the phi to a select is silly because we will always have to do the
call conditionally. As such, select promotion is actually a pessimization.
llvm-svn: 16972
2004-10-14 05:12:50 +00:00
Reid Spencer
69812714cd
Allow this file to compile on Darwin.
...
llvm-svn: 16971
2004-10-14 03:33:25 +00:00
Reid Spencer
37d4d6b2a2
Use __MINGW instead of __MING. Patch contributed by Henrik Bach.
...
llvm-svn: 16970
2004-10-14 03:09:02 +00:00
Reid Spencer
2f5fd88036
Get proper BSD #includes for MappedFile implementation.
...
llvm-svn: 16969
2004-10-14 03:06:59 +00:00
Reid Spencer
9cb9354d17
Implementation of MappedFile for Win32. Patch provided by Jeff Cohen.
...
llvm-svn: 16968
2004-10-14 03:05:59 +00:00
Chris Lattner
9a0e2546a0
Today is not my day. Fix broken #
...
llvm-svn: 16967
2004-10-14 02:31:35 +00:00
Chris Lattner
bff972d453
unbreak previous checkin :(
...
llvm-svn: 16966
2004-10-14 02:06:48 +00:00
Chris Lattner
e8fe2c2418
Add back a missing paren
...
llvm-svn: 16965
2004-10-14 01:57:28 +00:00
Chris Lattner
315157df62
Fit to 80 cols
...
llvm-svn: 16964
2004-10-14 01:49:34 +00:00
Chris Lattner
3d98008553
Wrap to 80 cols, delete some seriously old debugging printouts
...
llvm-svn: 16963
2004-10-14 01:46:07 +00:00
Chris Lattner
da6a885076
Fit in 80 columns
...
llvm-svn: 16962
2004-10-14 01:39:18 +00:00
Chris Lattner
eddbc20e2e
Minor cleanups
...
llvm-svn: 16961
2004-10-14 01:35:17 +00:00
Chris Lattner
ac1a547a38
Patch to make VS happier, thanks to Morten Ofstad for pointing this out.
...
llvm-svn: 16956
2004-10-13 15:25:46 +00:00
Chris Lattner
6017d47064
Use explicit std:: qualification to avoid relying on Koenig lookup, which
...
VC++ does not do properly. Thanks to Morten Ofstad for the patch!
llvm-svn: 16955
2004-10-13 15:11:23 +00:00
Chris Lattner
36fca705b1
Get rid of template templates that were preventing VC from compiling the
...
set_intersect template. Thanks to Morten Ofstad and Jeff Cohen for the
patch!
llvm-svn: 16954
2004-10-13 15:09:21 +00:00
Reid Spencer
def9848a6c
Changes for automake.
...
llvm-svn: 16953
2004-10-13 11:56:07 +00:00
Reid Spencer
d385a67c44
Set up BUILD_MODE based on the configuration so the default build mode
...
is established from configuration. Also, don't make the ENABLE_ options
AM_CONDITIONALs.
llvm-svn: 16952
2004-10-13 11:53:12 +00:00
Reid Spencer
26bfe011f8
Updates for changes in Makefile rules.
...
llvm-svn: 16951
2004-10-13 11:48:50 +00:00
Reid Spencer
ace94df71f
Update to reflect changes in Makefile rules.
...
llvm-svn: 16950
2004-10-13 11:46:52 +00:00
Reid Spencer
5b240ad1d9
Get rid of the horrendous FIND_PATH macro, have libs and progs linked into
...
a common directory for simplicity. Provide an easy way to relink some
objects
llvm-svn: 16949
2004-10-13 11:39:51 +00:00
Chris Lattner
b15f04623b
Update doco, make doxygen more, use standard dividers.
...
llvm-svn: 16948
2004-10-13 04:44:53 +00:00