Commit Graph

11008 Commits

Author SHA1 Message Date
Chris Lattner
44716bb0f7 Cleanup the cast section, add the select instruction
llvm-svn: 12307
2004-03-12 05:50:16 +00:00
Chris Lattner
3efa4e8010 New testcase
llvm-svn: 12306
2004-03-12 05:50:02 +00:00
Misha Brukman
da119ce857 Make code more readable.
llvm-svn: 12305
2004-03-12 00:58:41 +00:00
Misha Brukman
8eac0e432a Fix indentation.
llvm-svn: 12298
2004-03-11 23:53:51 +00:00
Misha Brukman
fe8263c956 Move implementations of functions here, which avoids #including <cstdlib> in the
header file and all those who #include it.

llvm-svn: 12297
2004-03-11 23:52:43 +00:00
Misha Brukman
384b4b20d4 Move function implementations to a .cpp file, avoid #including <cstdlib> here.
llvm-svn: 12296
2004-03-11 23:52:03 +00:00
Misha Brukman
62d611f21b Forward-declare templates for fix compilation when Argument.h is included first.
llvm-svn: 12295
2004-03-11 23:42:24 +00:00
Misha Brukman
6ed546e3d2 Doxygenified and cleand up comments.
llvm-svn: 12294
2004-03-11 23:08:20 +00:00
Misha Brukman
d0bbc13f17 Miscellaneous additions are a separate section.
llvm-svn: 12293
2004-03-11 21:26:29 +00:00
Brian Gaeke
74b256ee41 Make sure libcrtend.a gets installed when you make install-bytecode.
llvm-svn: 12292
2004-03-11 20:55:23 +00:00
Brian Gaeke
ede938b425 Get rid of the abort in PhyRegAlloc::finishSavingState().
Make an explicit call to it from runOnFunction() if we know we're supposed to
write into the global. This is lame (esp. the const_cast), but it solves
the problem.

llvm-svn: 12291
2004-03-11 19:46:30 +00:00
Brian Gaeke
e6916ff3b4 Give pass a name
llvm-svn: 12290
2004-03-11 19:23:15 +00:00
Misha Brukman
992e44e3c5 Fix compilation on Sparc: assert(0) => abort()
llvm-svn: 12289
2004-03-11 19:08:24 +00:00
Misha Brukman
34ab36e8c8 SparcV8 removed until it grows up becomes a mature backend.
llvm-svn: 12288
2004-03-11 18:16:33 +00:00
Alkis Evlogimenos
490aa035b9 Fix spelling.
llvm-svn: 12287
2004-03-11 10:14:21 +00:00
Brian Gaeke
b3f9f99ff2 In PhyRegAlloc::saveState(), dump Arguments' saved-state, and try to
make the output more compact.

Divorce state-saving from the doFinalization method; for some reason it's not
getting called when I want it to, at Reoptimizer time. Put the guts in
PhyRegAlloc::finishSavingState(). Put an abort() in it so that I can be really
really sure that it's getting called.

Update comments.

llvm-svn: 12286
2004-03-11 06:45:52 +00:00
Brian Gaeke
bb3d010689 Remove ghostly directory from the build
llvm-svn: 12285
2004-03-11 04:42:41 +00:00
Alkis Evlogimenos
1052d4f9ab Embed a floating frame of the bugzilla query in the page. This way
people looking for open projects cannot miss the link :-)

llvm-svn: 12284
2004-03-11 02:50:35 +00:00
Chris Lattner
5c7858f137 Minor additions and cleanups
llvm-svn: 12279
2004-03-11 00:50:54 +00:00
Brian Gaeke
a3ed4044b0 Move all the SaveState options and stuff inton one spot at the top of the file.
De-constify SaveStateToModule; we have to set both it and SaveRegAllocState
explicitly in the reoptimizer.
Make SaveRegAllocState an 'external location' option.

llvm-svn: 12278
2004-03-10 22:21:03 +00:00
Brian Gaeke
8af4555830 Only call verifySavedState if SaveRegAllocState is set AND debugging flag is on.
llvm-svn: 12277
2004-03-10 22:01:59 +00:00
Chris Lattner
61cab65b13 Bugz fixed
llvm-svn: 12276
2004-03-10 21:43:47 +00:00
Chris Lattner
405790ecae Fix PR284: [indvars] Induction variable analysis violates LLVM invariants
llvm-svn: 12275
2004-03-10 21:42:19 +00:00
Chris Lattner
af9963cb25 New testcase for PR284: [indvars] Induction variable analysis violates LLVM invariants
llvm-svn: 12274
2004-03-10 21:41:47 +00:00
Alkis Evlogimenos
f0e2e8f90d Add link to bugzilla query of unassigned enhancements. Specific open
projects like 'port glibc to llvm' or 'improve nightly tester', should
have an unassigned enhancement bug opened for them so that they can be
tracked more easily. Open projects should only list generic projects
like 'compile programs with the LLVM compiler' or 'write a new backend
for target'.

llvm-svn: 12273
2004-03-10 19:38:33 +00:00
Misha Brukman
99eed7f438 We need a logo.
llvm-svn: 12272
2004-03-10 19:22:29 +00:00
Brian Gaeke
2c328ec19c Add brainstorm for a random test vector generator
llvm-svn: 12271
2004-03-10 19:15:50 +00:00
Brian Gaeke
794605ef64 Recommend using install-bytecode target
llvm-svn: 12270
2004-03-10 19:08:52 +00:00
Brian Gaeke
c60efbcee1 My fix for PR274 broke the build on Darwin/PPC. As I'm fairly certain this
bug only affects Linux systems that use GLIBC, I'm going to put ifdefs around
the array.

llvm-svn: 12269
2004-03-10 17:38:28 +00:00
Brian Gaeke
396597ebd2 Add support for 'install-bytecode' target, used for ONLY installing
bytecode-libs.

llvm-svn: 12268
2004-03-10 17:38:01 +00:00
Brian Gaeke
5a41650353 Fix up a seriously outdated comment.
llvm-svn: 12267
2004-03-10 17:37:50 +00:00
Chris Lattner
7c5d421069 New testcase for PR275
llvm-svn: 12266
2004-03-10 03:07:45 +00:00
Chris Lattner
d6712cf2da New testcase for PR276: llvm-g++ does not mangle method names that match stdlib function names
llvm-svn: 12265
2004-03-09 22:51:03 +00:00
Chris Lattner
9ce3638433 implement new method
llvm-svn: 12264
2004-03-09 19:37:06 +00:00
Chris Lattner
2fef10e580 new method
llvm-svn: 12263
2004-03-09 19:36:59 +00:00
Alkis Evlogimenos
0e0433a791 Spill explicit physical register defs as well.
llvm-svn: 12260
2004-03-09 08:35:13 +00:00
Brian Gaeke
dcb019838b Now that I read it again, this part in particular strikes me as kind of
pushy and contentious...

llvm-svn: 12259
2004-03-09 07:20:26 +00:00
Alkis Evlogimenos
a13672fd71 Check if printing of implicit uses is required for all types of shift
instructions.

llvm-svn: 12258
2004-03-09 06:10:15 +00:00
Brian Gaeke
b50d7fc23c b00g fixed
llvm-svn: 12257
2004-03-09 05:43:59 +00:00
Brian Gaeke
acf93be258 Address PR274 - '[JIT] Programs cannot resolve the fstat function'
by trying to get the compiler to generate an undefined reference for it
and related functions which live in libc_nonshared.a on Linux.

Linkers... sigh.

llvm-svn: 12256
2004-03-09 05:22:10 +00:00
Brian Gaeke
de0239b2a6 Hmm, who left this sitting around in my tree
llvm-svn: 12255
2004-03-09 04:49:13 +00:00
Alkis Evlogimenos
7c0224327e Differentiate between extended precision floats (80-bit) and double precision floats (64-bit)
llvm-svn: 12254
2004-03-09 03:37:54 +00:00
Alkis Evlogimenos
f86d2df13d Use newly added API to emit bytes for instructions that gas misassembles
llvm-svn: 12253
2004-03-09 03:35:34 +00:00
Alkis Evlogimenos
085957be0b Add emitInstruction() API so that we can get the bytes of a simple instruction
llvm-svn: 12252
2004-03-09 03:34:53 +00:00
Alkis Evlogimenos
813daf05c3 Constify things a bit
llvm-svn: 12251
2004-03-09 03:30:12 +00:00
Chris Lattner
0653b478a4 Bug fixed
llvm-svn: 12250
2004-03-09 00:59:15 +00:00
Chris Lattner
bae65cdb6d Checkin testcase for PR261
llvm-svn: 12249
2004-03-09 00:55:58 +00:00
Chris Lattner
75301571e5 John fixed this bug
llvm-svn: 12248
2004-03-09 00:40:49 +00:00
Brian Gaeke
57269b0c32 Change PhyRegAlloc::saveStateForValue()'s arg type to deal with
AllocInfo.Instruction becoming an int.

llvm-svn: 12247
2004-03-08 23:22:03 +00:00
Brian Gaeke
ed741b87c2 Save argument list alloc state by recording it as the operands of Instruction
#-1. Other minor changes to deal with AllocInfo.Instruction becoming an int.

llvm-svn: 12246
2004-03-08 23:22:02 +00:00