1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 22:42:46 +02:00
Commit Graph

14975 Commits

Author SHA1 Message Date
Reid Spencer
8a336ec771 First cut at the LLVM Makefile Guide. There's lots to correct and lots more
to write, but this is all my brain can muster for tonight.

llvm-svn: 17184
2004-10-23 07:57:22 +00:00
Misha Brukman
bd6a01c3ef DForm_1, particularly used by store instructions, needs the immediate operand to
be listed second as that is how the instructions are usually created (and is the
correct asm syntax) so that it's assembled correctly from its constituents

llvm-svn: 17183
2004-10-23 06:08:38 +00:00
Misha Brukman
e4ae05e099 Fix the SPR field for MTLR, MFLR, MTCTR, and MFCTR instructions.
The decimal value given in the manual (8 or 9) really needs to be multiplied by
a factor of 32 because of the group of 5 zero bits after the register code.

llvm-svn: 17182
2004-10-23 06:05:49 +00:00
Misha Brukman
5cea06807d The value of the XO field for MFLR and MFCTR is 339, not 399
llvm-svn: 17181
2004-10-23 05:38:55 +00:00
Misha Brukman
39d23c81d4 Remove extraneous blank line
llvm-svn: 17180
2004-10-23 04:59:22 +00:00
Chris Lattner
0566f4f4ce Make VC happier, patch contributed by Morten Ofstad
llvm-svn: 17179
2004-10-23 04:58:50 +00:00
Misha Brukman
c660c6c514 Align function arguments in function headers
llvm-svn: 17178
2004-10-23 04:58:32 +00:00
Chris Lattner
9595df9f4e Fix a bug that Brian brought to my attention. This corrects:
Assembler/2004-10-22-BCWriterUndefBug.llx

llvm-svn: 17177
2004-10-23 03:10:23 +00:00
Chris Lattner
8334a398ed New testcase
llvm-svn: 17176
2004-10-23 03:10:01 +00:00
Nate Begeman
91ef127999 Kill casts from integer types to unsigned byte, when the cast was only used
as the shift amount operand to a shift instruction.  This was causing us to
emit unnecessary clear operations for code such as:
int foo(int x) { return 1 << x; }

llvm-svn: 17175
2004-10-23 00:50:23 +00:00
Misha Brukman
cfd8a7eb53 Use cleaner quoting and eliminate blank space
llvm-svn: 17174
2004-10-22 23:35:57 +00:00
Reid Spencer
4e31ccbe2e Clean up the output from this makefile so its not verbose.
llvm-svn: 17173
2004-10-22 23:24:39 +00:00
Reid Spencer
09a89bb3a7 Make sure that we don't set up a circular dependency if OBJDIR == SRCDIR
llvm-svn: 17172
2004-10-22 23:06:30 +00:00
Reid Spencer
101bcc348a Remove double colon rule for gram.tab.h so it doesn't conflict with the
auto-generated dependency rule.

llvm-svn: 17171
2004-10-22 23:05:46 +00:00
Misha Brukman
ffc5ff3ca9 Pull in Target.td using absolute path from source root instead of relative path;
this allows us to have sub-targets whose depth in the tree is not the same as it
is for the standard X86/PowerPC/Sparc.

llvm-svn: 17170
2004-10-22 22:18:27 +00:00
Misha Brukman
2493cb2a2a Adjust rules for building .inc files due to Reid's changes of Makefile.rules
llvm-svn: 17169
2004-10-22 22:16:24 +00:00
Reid Spencer
5574857063 We're not doing automake any more
llvm-svn: 17168
2004-10-22 21:02:23 +00:00
Reid Spencer
019621a1ea Adjust to changes in Makefile.rules
llvm-svn: 17167
2004-10-22 21:02:08 +00:00
Reid Spencer
217a872cea Shorten the rules, speed it up, correct library contruction, add *.td rules
llvm-svn: 17166
2004-10-22 21:01:56 +00:00
Reid Spencer
6d2478ad74 Remove the unused SourceDir variable (use BUILD_SRC_DIR)
llvm-svn: 17165
2004-10-22 21:01:44 +00:00
Reid Spencer
92dcb47425 One more file to remove now that we're not doing automake.
llvm-svn: 17164
2004-10-22 19:33:22 +00:00
Reid Spencer
9f6f128630 Eliminate compilation warning on uninitialized variable.
llvm-svn: 17163
2004-10-22 16:10:39 +00:00
Chris Lattner
f0e2ce2279 *** empty log message ***
llvm-svn: 17161
2004-10-22 06:43:28 +00:00
Chris Lattner
8079adb986 New testcase. Check for the ability to promote a malloc whose initialzed state is checked by the program
llvm-svn: 17160
2004-10-22 06:43:07 +00:00
Chris Lattner
6321852143 Fix a bug Nate noticed, where we miscompiled a simple testcase
llvm-svn: 17157
2004-10-22 04:53:16 +00:00
Reid Spencer
b95d647ef4 Remove automake support.
llvm-svn: 17156
2004-10-22 03:39:08 +00:00
Reid Spencer
e48ba34fd4 We won't use automake
llvm-svn: 17155
2004-10-22 03:35:04 +00:00
Misha Brukman
66a092f3df Remove debug code emitter from the JIT
llvm-svn: 17151
2004-10-21 03:07:38 +00:00
Alkis Evlogimenos
67449982b8 Make this compile.
llvm-svn: 17150
2004-10-21 02:44:16 +00:00
Misha Brukman
9514a75e36 * Added basic support for JITing functions, basic blocks, instruction encoding,
including registers, constants, and partial support for global addresses
* The JIT is disabled by default to allow building llvm-gcc, which wants to test
  running programs during configure

llvm-svn: 17149
2004-10-21 01:42:02 +00:00
Nate Begeman
d7cbf1d28e Don't clear or sign extend bool->int. This fires a few dozen times on the test suite
llvm-svn: 17147
2004-10-20 21:55:41 +00:00
Brian Gaeke
71ff3efdd5 Explain what this pass does.
llvm-svn: 17146
2004-10-20 19:38:58 +00:00
John Criswell
0ba9295e3c Small performance improvement in generated C code:
Instead of unconditionally copying all phi node values into temporaries for
all successor blocks, generate code that will determine what successor
block will be called and then copy only those phi node values needed by
the successor block.

This seems to cut down namd execution time from being 8% higher than GCC to
4% higher than GCC.

llvm-svn: 17144
2004-10-20 14:38:39 +00:00
Misha Brukman
9113553178 * Add baseline structural JIT code, but disable the JIT to allow llvm-gcc builds
- Support added for functions, basic blocks, constant pool, constants,
    registers, and some basic support for globals, all untested
* Turn assert()s into abort()s so that unimplemented functions fail in release

llvm-svn: 17143
2004-10-19 19:49:42 +00:00
Chris Lattner
e555b5c5cb Hrm, some people complain when the compiler cheerfully tells them what it's
doing... I guess they're right.

llvm-svn: 17142
2004-10-19 06:33:16 +00:00
Misha Brukman
4cd5cde095 Fix some grammar
llvm-svn: 17141
2004-10-19 05:55:54 +00:00
Misha Brukman
c0ac8cae1c If we're going to make the braces of functions line up for ease of readability
and aesthetic reasons, might as well finish the job

llvm-svn: 17140
2004-10-19 05:50:34 +00:00
Misha Brukman
be39800a89 Remove unnecessary spaces in function signature
llvm-svn: 17139
2004-10-19 05:49:46 +00:00
Brian Gaeke
62ecd75aeb Simplify mapping info generation. In particular, the LLVM-to-MachineInstr map
is no longer emitted, and we do not reference any MachineCodeForInstruction
information.

llvm-svn: 17138
2004-10-19 05:15:21 +00:00
Misha Brukman
fd9bef227a * Fit constructor initializer on a single line
* Delete blank chars at end of line to fit into 80 cols

llvm-svn: 17137
2004-10-19 00:29:16 +00:00
Reid Spencer
ce514b1c2c Initial automake generated Makefile template
llvm-svn: 17136
2004-10-18 23:55:41 +00:00
Misha Brukman
56f2d0e5fe Move code to redefine INT64_{MIN,MAX} on AIX/PowerPC to a separate header,
because #undef becomes commented out in DataTypes.h.in due to autoheader

llvm-svn: 17135
2004-10-18 22:14:48 +00:00
Nate Begeman
49e38c2185 Initial implementation of the strength reduction for GEP instructions in
loops.  This optimization is not turned on by default yet, but may be run
with the opt tool's -loop-reduce flag.  There are many FIXMEs listed in the
code that will make it far more applicable to a wide range of code, but you
have to start somewhere :)

This limited version currently triggers on the following tests in the
MultiSource directory:
pcompress2: 7 times
cfrac: 5 times
anagram: 2 times
ks: 6 times
yacr2: 2 times

llvm-svn: 17134
2004-10-18 21:08:22 +00:00
Misha Brukman
07479efa84 * AIX on Power defines INT64_MIN and INT64_MAX in ways that annoy GCC, so
special-case those definitions
* Add comments in #ifdef/#else/#endif clauses for ease of reading

llvm-svn: 17132
2004-10-18 18:35:21 +00:00
Misha Brukman
ed985abc65 AIX does not have mkdtemp() so emulate its behavior using mktemp() and mkdir()
llvm-svn: 17131
2004-10-18 17:39:45 +00:00
Chris Lattner
9f1c4d5b67 Fix miscompilations in the SparcV9 backend that were induced by this patch:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041011/019311.html

llvm-svn: 17130
2004-10-18 17:19:20 +00:00
Chris Lattner
cac643c78f Improve compatibility with VC++, patch contributed by Morten Ofstad!
llvm-svn: 17126
2004-10-18 15:54:17 +00:00
Chris Lattner
9e2649a7be Get this file compiling with VC++, patch contributed by Morten Ofstad. Thanks Morten!
llvm-svn: 17125
2004-10-18 15:43:46 +00:00
Reid Spencer
a5b7b341a4 Declare a function in the correct namespace.
Patch contributed by Morten Ofstad. Thanks Morten!

llvm-svn: 17124
2004-10-18 14:43:45 +00:00
Reid Spencer
2b5cfe8be8 Correction to allow compilation with Visual C++.
Patch contributed by Morten Ofstad. Thanks Morten!

llvm-svn: 17123
2004-10-18 14:38:48 +00:00