oota-llvm.git
18 years agoAlso checks for noResults field.
Evan Cheng [Thu, 20 Jul 2006 23:36:20 +0000 (23:36 +0000)]
Also checks for noResults field.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29235 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoA splat of a vector constant of all zero or all one is the vector constant.
Evan Cheng [Thu, 20 Jul 2006 23:09:47 +0000 (23:09 +0000)]
A splat of a vector constant of all zero or all one is the vector constant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29234 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMissing a space.
Evan Cheng [Thu, 20 Jul 2006 22:52:28 +0000 (22:52 +0000)]
Missing a space.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29233 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIf a shuffle is unary, i.e. one of the vector argument is not needed, turn the
Evan Cheng [Thu, 20 Jul 2006 22:44:41 +0000 (22:44 +0000)]
If a shuffle is unary, i.e. one of the vector argument is not needed, turn the
operand into a undef and adjust mask accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29232 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWe now fail and print an error message if a nightly tester does not specify a nicknam...
Patrick Jenkins [Thu, 20 Jul 2006 22:28:43 +0000 (22:28 +0000)]
We now fail and print an error message if a nightly tester does not specify a nickname on the command line

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29230 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoClean up.
Evan Cheng [Thu, 20 Jul 2006 21:37:39 +0000 (21:37 +0000)]
Clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29228 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a race condition in the makefile andrew reported
Chris Lattner [Thu, 20 Jul 2006 19:08:27 +0000 (19:08 +0000)]
Fix a race condition in the makefile andrew reported

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29227 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMinor comment tweaks
Chris Lattner [Thu, 20 Jul 2006 19:06:16 +0000 (19:06 +0000)]
Minor comment tweaks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29226 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoNew testcase for PR833
Chris Lattner [Thu, 20 Jul 2006 19:04:36 +0000 (19:04 +0000)]
New testcase for PR833

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29225 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMems can be in the output list also. This is the second half of a fix for
Chris Lattner [Thu, 20 Jul 2006 19:02:21 +0000 (19:02 +0000)]
Mems can be in the output list also.  This is the second half of a fix for
PR833

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29224 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake it fit into 80 cols.
Devang Patel [Thu, 20 Jul 2006 18:03:39 +0000 (18:03 +0000)]
Make it fit into 80 cols.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29223 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd new constructor to accept vector of exported names while creating
Devang Patel [Thu, 20 Jul 2006 17:48:05 +0000 (17:48 +0000)]
Add new constructor to accept vector of exported names while creating
InternalizePass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29222 91177308-0d34-0410-b5e6-96231b3b80d8

18 years ago80 cols
Andrew Lenharth [Thu, 20 Jul 2006 17:43:27 +0000 (17:43 +0000)]
80 cols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29221 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce number of exported symbols
Andrew Lenharth [Thu, 20 Jul 2006 17:28:38 +0000 (17:28 +0000)]
Reduce number of exported symbols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29220 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix linking on Alpha
Andrew Lenharth [Thu, 20 Jul 2006 17:27:58 +0000 (17:27 +0000)]
Fix linking on Alpha

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29219 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixed a problem that caused the script to abort right before it sent out the information
Patrick Jenkins [Thu, 20 Jul 2006 16:54:43 +0000 (16:54 +0000)]
Fixed a problem that caused the script to abort right before it sent out the information

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29218 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix PR835 so that touching tblgen in a way that doesn't affect intrinsic
Chris Lattner [Thu, 20 Jul 2006 16:44:21 +0000 (16:44 +0000)]
Fix PR835 so that touching tblgen in a way that doesn't affect intrinsic
generation does not rebuild files that just use intrinsic info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29217 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoNew entry.
Evan Cheng [Wed, 19 Jul 2006 21:29:30 +0000 (21:29 +0000)]
New entry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29215 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDo once flag never set to true.
Jim Laskey [Wed, 19 Jul 2006 19:33:08 +0000 (19:33 +0000)]
Do once flag never set to true.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29214 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTidy up a few things.
Jim Laskey [Wed, 19 Jul 2006 19:32:06 +0000 (19:32 +0000)]
Tidy up a few things.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29213 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAnswer the FAQ: "can llvm convert C++ code to C?"
Chris Lattner [Wed, 19 Jul 2006 18:19:59 +0000 (18:19 +0000)]
Answer the FAQ: "can llvm convert C++ code to C?"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29212 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce size of routine. Shrinks .o by 37%.
Jim Laskey [Wed, 19 Jul 2006 17:53:32 +0000 (17:53 +0000)]
Reduce size of routine. Shrinks .o by 37%.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29210 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemoved the portion that determines which tests are newly passing/failing because...
Patrick Jenkins [Wed, 19 Jul 2006 17:52:51 +0000 (17:52 +0000)]
Removed the portion that determines which tests are newly passing/failing because we no longer keep the previos days list on the testing machines.

Added functionality to send lists of all tests, all passing tests, all failing tests all unexpected failing tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29209 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agobswapped load/store instructions are only availble in indexed addressing form.
Chris Lattner [Wed, 19 Jul 2006 17:15:36 +0000 (17:15 +0000)]
bswapped load/store instructions are only availble in indexed addressing form.
As such, use xoaddr (indexed only), not xaddr for address selection.

This fixes CodeGen/PowerPC/2006-07-19-stwbrx-crash.ll, a crash compiling lencod.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29208 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase
Chris Lattner [Wed, 19 Jul 2006 17:14:23 +0000 (17:14 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29207 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRegression test for PR834.
Jim Laskey [Wed, 19 Jul 2006 16:37:15 +0000 (16:37 +0000)]
Regression test for PR834.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29206 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBug#834 ICE (crash in code generator?) when building PCH .
Jim Laskey [Wed, 19 Jul 2006 11:54:50 +0000 (11:54 +0000)]
Bug#834 ICE (crash in code generator?) when building PCH .
Missing Darwin check in Intel ATT ASM printer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29204 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMisc. new entry.
Evan Cheng [Wed, 19 Jul 2006 06:06:24 +0000 (06:06 +0000)]
Misc. new entry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29202 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake sub- and super- register classes const.
Evan Cheng [Wed, 19 Jul 2006 05:58:18 +0000 (05:58 +0000)]
Make sub- and super- register classes const.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29200 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an assertion.
Owen Anderson [Wed, 19 Jul 2006 05:48:45 +0000 (05:48 +0000)]
Add an assertion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29199 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake LoopUnroll not die on LCSSA Phis. This makes lencod work again.
Owen Anderson [Wed, 19 Jul 2006 05:45:14 +0000 (05:45 +0000)]
Make LoopUnroll not die on LCSSA Phis.  This makes lencod work again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29198 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a error that hadn't yet cause any problems, but I'm sure it would have
Owen Anderson [Wed, 19 Jul 2006 03:51:48 +0000 (03:51 +0000)]
Fix a error that hadn't yet cause any problems, but I'm sure it would have
somewhere down the road.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29197 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a bug handling instructions, like blr, which just consist of a text
Chris Lattner [Wed, 19 Jul 2006 01:39:06 +0000 (01:39 +0000)]
Fix a bug handling instructions, like blr, which just consist of a text
string.  The return value of printInstruction should be true for these.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29196 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMove MVT::getVectorType out of line, it is large and shouldn't be inlined.
Chris Lattner [Wed, 19 Jul 2006 00:40:45 +0000 (00:40 +0000)]
Move MVT::getVectorType out of line, it is large and shouldn't be inlined.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29195 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoINC / DEC instructions have shorter code size than ADD32ri8, etc.
Evan Cheng [Wed, 19 Jul 2006 00:27:29 +0000 (00:27 +0000)]
INC / DEC instructions have shorter code size than ADD32ri8, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29194 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd code size to target instruction use it as the 3rd isel sorting tie-breaker.
Evan Cheng [Wed, 19 Jul 2006 00:24:41 +0000 (00:24 +0000)]
Add code size to target instruction use it as the 3rd isel sorting tie-breaker.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29193 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an out-of-line virtual method for the sdnode class to give it a home.
Chris Lattner [Wed, 19 Jul 2006 00:00:37 +0000 (00:00 +0000)]
Add an out-of-line virtual method for the sdnode class to give it a home.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29192 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an out-of-line virtual method to provide a home for the cl::option class.
Chris Lattner [Tue, 18 Jul 2006 23:59:33 +0000 (23:59 +0000)]
Add an out-of-line virtual method to provide a home for the cl::option class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29191 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake sub- super- reg-class tables static.
Evan Cheng [Tue, 18 Jul 2006 22:18:31 +0000 (22:18 +0000)]
Make sub- super- reg-class tables static.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29190 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agosilence warnings in a release build
Chris Lattner [Tue, 18 Jul 2006 21:48:57 +0000 (21:48 +0000)]
silence warnings in a release build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29189 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoyet another change to get the correct gcc version for the nightly test results.
Patrick Jenkins [Tue, 18 Jul 2006 21:21:53 +0000 (21:21 +0000)]
yet another change to get the correct gcc version for the nightly test results.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29188 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix case where identical cases were not detected across case #0, because
Chris Lattner [Tue, 18 Jul 2006 19:27:30 +0000 (19:27 +0000)]
Fix case where identical cases were not detected across case #0, because
instructions not handled would have a case value of #0, throwing things off.
This marginally shrinks the X86 asmprinter, but shrinks the sparc asmwriter
by 25 lines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29187 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoOnly reuse a previous IV if it would not require a type conversion.
Evan Cheng [Tue, 18 Jul 2006 19:07:58 +0000 (19:07 +0000)]
Only reuse a previous IV if it would not require a type conversion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29186 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix an accidentally duplicated line that caused tblgen to crash on itanium.
Chris Lattner [Tue, 18 Jul 2006 19:06:01 +0000 (19:06 +0000)]
Fix an accidentally duplicated line that caused tblgen to crash on itanium.
Add an assert that catches the real problem earlier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29185 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMaximally group commands. When all instructions within a command set have a
Chris Lattner [Tue, 18 Jul 2006 18:28:27 +0000 (18:28 +0000)]
Maximally group commands.  When all instructions within a command set have a
series of identical commands, handle them all with one switch.  In the case
of the x86 at&t asm printer, only 3 switches are needed for all instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29184 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoChange generator to remove operands as it processes them. No change in
Chris Lattner [Tue, 18 Jul 2006 17:56:07 +0000 (17:56 +0000)]
Change generator to remove operands as it processes them.  No change in
generated file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29183 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoHandle the last operand more intelligently. When emitting the \n, also
Chris Lattner [Tue, 18 Jul 2006 17:50:22 +0000 (17:50 +0000)]
Handle the last operand more intelligently.  When emitting the \n, also
return from the asmprinter to make the generated asmprinter both more
efficient and smaller.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29182 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEmit switches with 1/2 cases as unconditional code or an if/then/else for
Chris Lattner [Tue, 18 Jul 2006 17:43:54 +0000 (17:43 +0000)]
Emit switches with 1/2 cases as unconditional code or an if/then/else for
tidyness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29181 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSteal bits from the asm string index to use for operand information. On both
Chris Lattner [Tue, 18 Jul 2006 17:38:46 +0000 (17:38 +0000)]
Steal bits from the asm string index to use for operand information.  On both
x86 and ppc, this gets us 4 more bits to play with, since the string indices
both only use 12 bits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29180 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMerge operand info and asmstr idx into a single 32-bit field. No other change.
Chris Lattner [Tue, 18 Jul 2006 17:32:27 +0000 (17:32 +0000)]
Merge operand info and asmstr idx into a single 32-bit field.  No other change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29179 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMinor output changes.
Patrick Jenkins [Tue, 18 Jul 2006 17:21:30 +0000 (17:21 +0000)]
Minor output changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29178 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoCompletely change the structure of the generated asmprinter to be more table
Chris Lattner [Tue, 18 Jul 2006 17:18:03 +0000 (17:18 +0000)]
Completely change the structure of the generated asmprinter to be more table
based and less switch-statements-with-hundreds-of-cases based.  This shrinks
the x86 asmprinters to about 1/3 their previous size.

Other improvements coming.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29177 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoinitial prologue and epilogue implementation. Need to define add and sub before finis...
Rafael Espindola [Tue, 18 Jul 2006 17:00:30 +0000 (17:00 +0000)]
initial prologue and epilogue implementation. Need to define add and sub before finishing it :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29175 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake the implicit def instructions look like other instrs.
Chris Lattner [Tue, 18 Jul 2006 16:33:26 +0000 (16:33 +0000)]
Make the implicit def instructions look like other instrs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29174 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agosimple optimization: don't bother calling "exists" (which calls the syscall
Chris Lattner [Tue, 18 Jul 2006 07:07:51 +0000 (07:07 +0000)]
simple optimization: don't bother calling "exists" (which calls the syscall
"access").  Instead, just let the open call fail if the file doesn't exist.
This reduces the # syscalls executed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29173 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove a dead conditional: info_ can only be allocated if FD is good. Improve
Chris Lattner [Tue, 18 Jul 2006 07:03:14 +0000 (07:03 +0000)]
Remove a dead conditional: info_ can only be allocated if FD is good.  Improve
spacing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29172 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThe only entry in the stat buf this code cares about is the size. Keep just
Chris Lattner [Tue, 18 Jul 2006 07:01:08 +0000 (07:01 +0000)]
The only entry in the stat buf this code cares about is the size.  Keep just
the size, not the whole stat buffer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29171 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce code in the error path by only allocating info_ if everything looks
Chris Lattner [Tue, 18 Jul 2006 06:57:51 +0000 (06:57 +0000)]
Reduce code in the error path by only allocating info_ if everything looks
good.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29170 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUnindent some code
Chris Lattner [Tue, 18 Jul 2006 06:52:52 +0000 (06:52 +0000)]
Unindent some code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29169 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd functions to compute ceil(log2(N)) to match functions for floor(log2(N))
Chris Lattner [Tue, 18 Jul 2006 00:47:10 +0000 (00:47 +0000)]
Add functions to compute ceil(log2(N)) to match functions for floor(log2(N))

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29168 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce the size of Constants.o by 25% by generalizing specific instantiations of
Jim Laskey [Mon, 17 Jul 2006 17:38:29 +0000 (17:38 +0000)]
Reduce the size of Constants.o by 25% by generalizing specific instantiations of
std::map.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29163 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIf a gccpath is specified when invoking the nightly test script we will hopefully...
Patrick Jenkins [Mon, 17 Jul 2006 16:41:19 +0000 (16:41 +0000)]
If a gccpath is specified when invoking the nightly test script we will hopefully now use that gcc for the gcc version. Also fixed some 80 char column stuff.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29162 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUse __attribute__((noinline)) only if compiled by gcc.
Evan Cheng [Sun, 16 Jul 2006 06:14:37 +0000 (06:14 +0000)]
Use __attribute__((noinline)) only if compiled by gcc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29161 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoParameterize target node ValueType to allow more sharing of emit functions.
Evan Cheng [Sun, 16 Jul 2006 06:12:52 +0000 (06:12 +0000)]
Parameterize target node ValueType to allow more sharing of emit functions.
Also reduce the number of arguments passed to emit functions and removed a
hack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29160 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoskeleton of a lowerCall implementation for ARM
Rafael Espindola [Sun, 16 Jul 2006 01:02:57 +0000 (01:02 +0000)]
skeleton of a lowerCall implementation for ARM

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29159 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce instruction selection code size and stack frame size by factoring
Evan Cheng [Sat, 15 Jul 2006 08:45:20 +0000 (08:45 +0000)]
Reduce instruction selection code size and stack frame size by factoring
code that emit target specific nodes into emit functions that are uniquified
and shared among selection routines.
e.g. This reduces X86ISelDAGToDAG.o (release) from ~2M to ~1.5M. Stack frame
size of Select_store from ~13k down to ~8k.
This is the first step. Further work to enable more sharing will follow.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29158 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoOn 64-bit targets like ppc64, we should use .quad to output pointer directives,
Chris Lattner [Sat, 15 Jul 2006 01:34:12 +0000 (01:34 +0000)]
On 64-bit targets like ppc64, we should use .quad to output pointer directives,
not .long.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29157 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove what little AIX support we have. It has never been tested and isn't
Chris Lattner [Sat, 15 Jul 2006 01:24:23 +0000 (01:24 +0000)]
Remove what little AIX support we have.  It has never been tested and isn't
complete.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29156 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThe generated index array should be const.
Chris Lattner [Fri, 14 Jul 2006 23:14:02 +0000 (23:14 +0000)]
The generated index array should be const.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29155 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an out-of-line virtual function to home class.
Chris Lattner [Fri, 14 Jul 2006 23:08:47 +0000 (23:08 +0000)]
Add an out-of-line virtual function to home class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29154 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an out-of-line virtual method for X86DwarfWriter to give it a home.
Chris Lattner [Fri, 14 Jul 2006 23:05:05 +0000 (23:05 +0000)]
Add an out-of-line virtual method for X86DwarfWriter to give it a home.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29153 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEmit the string information for the asm writer as a single large string
Chris Lattner [Fri, 14 Jul 2006 22:59:11 +0000 (22:59 +0000)]
Emit the string information for the asm writer as a single large string
and index into it, instead of emitting it like this:

  static const char * const OpStrs[] = {
    "PHINODE\n",        // PHI
    0,  // INLINEASM
    "adc ",     // ADC32mi
    "adc ",     // ADC32mi8
   ...

The old way required thousands of relocations that slows down link time and
dynamic load times.

This also cuts about 10K off each of the X86 asmprinters, and should shrink
the others as well.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29152 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd two helpers for escaping and unescaping strings.
Chris Lattner [Fri, 14 Jul 2006 22:54:39 +0000 (22:54 +0000)]
Add two helpers for escaping and unescaping strings.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29151 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd two helper functions
Chris Lattner [Fri, 14 Jul 2006 22:54:06 +0000 (22:54 +0000)]
Add two helper functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29150 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoeliminate some ugly code, using ConstantExpr::getWithOperands instead.
Chris Lattner [Fri, 14 Jul 2006 22:21:31 +0000 (22:21 +0000)]
eliminate some ugly code, using ConstantExpr::getWithOperands instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29149 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a new helper, simplify ConstantExpr::getWithOperandReplaced at Gabor's
Chris Lattner [Fri, 14 Jul 2006 22:20:01 +0000 (22:20 +0000)]
Add a new helper, simplify ConstantExpr::getWithOperandReplaced at Gabor's
request :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29148 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd another helper method.
Chris Lattner [Fri, 14 Jul 2006 22:19:18 +0000 (22:19 +0000)]
Add another helper method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29147 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixed an issue where the user specified gcc was not the gcc we report to the nightly...
Patrick Jenkins [Fri, 14 Jul 2006 20:44:09 +0000 (20:44 +0000)]
Fixed an issue where the user specified gcc was not the gcc we report to the nightly test server.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29144 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a new method for bugpoint to use
Chris Lattner [Fri, 14 Jul 2006 19:37:40 +0000 (19:37 +0000)]
Add a new method for bugpoint to use

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29143 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a new method for bugpoint to use.
Chris Lattner [Fri, 14 Jul 2006 19:37:01 +0000 (19:37 +0000)]
Add a new method for bugpoint to use.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29142 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoHopefully the final attempt at making IndVars preserve LCSSA.
Owen Anderson [Fri, 14 Jul 2006 18:49:15 +0000 (18:49 +0000)]
Hopefully the final attempt at making IndVars preserve LCSSA.

This should fix PR 831.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29141 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd missing PPC64 extload/truncstores
Chris Lattner [Fri, 14 Jul 2006 04:42:02 +0000 (04:42 +0000)]
Add missing PPC64 extload/truncstores

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29140 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a note
Chris Lattner [Fri, 14 Jul 2006 04:07:29 +0000 (04:07 +0000)]
Add a note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29139 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBring the Xcode project up to date.
Jim Laskey [Thu, 13 Jul 2006 22:17:58 +0000 (22:17 +0000)]
Bring the Xcode project up to date.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29138 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoClean up.
Jim Laskey [Thu, 13 Jul 2006 22:17:08 +0000 (22:17 +0000)]
Clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29137 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAnother fix in the rotate encodings, needed when the first two operands are not
Chris Lattner [Thu, 13 Jul 2006 21:52:41 +0000 (21:52 +0000)]
Another fix in the rotate encodings, needed when the first two operands are not
the same.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29136 91177308-0d34-0410-b5e6-96231b3b80d8

18 years ago1. Simplfy bit operations.
Jim Laskey [Thu, 13 Jul 2006 21:02:53 +0000 (21:02 +0000)]
1. Simplfy bit operations.
2. Coalesce instruction cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29135 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRevert this patch temporarily until PR831 is fixed.
Chris Lattner [Thu, 13 Jul 2006 19:05:20 +0000 (19:05 +0000)]
Revert this patch temporarily until PR831 is fixed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29134 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSyntax error. I will run perl -c before commiting perl scripts.
Patrick Jenkins [Thu, 13 Jul 2006 16:58:42 +0000 (16:58 +0000)]
Syntax error. I will run perl -c before commiting perl scripts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29133 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixed some small bugs exposed when trying to get a sparc machine to run the script...
Patrick Jenkins [Thu, 13 Jul 2006 16:56:48 +0000 (16:56 +0000)]
Fixed some small bugs exposed when trying to get a sparc machine to run the script. Specifically some misnamed variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29132 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixed a bug handling void function types.
Jim Laskey [Thu, 13 Jul 2006 15:27:42 +0000 (15:27 +0000)]
Fixed a bug handling void function types.
Requires rebuild of llvm-gcc4 (touch llvm-debug.cpp.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29131 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoPrint negative immediates as negative values instead of large constants
Chris Lattner [Wed, 12 Jul 2006 23:24:02 +0000 (23:24 +0000)]
Print negative immediates as negative values instead of large constants
when using the immshifted addressing mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29130 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTurn an if into an else if.
Chris Lattner [Wed, 12 Jul 2006 22:37:18 +0000 (22:37 +0000)]
Turn an if into an else if.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29129 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix encoding of rotates, such as rldicl
Chris Lattner [Wed, 12 Jul 2006 22:08:13 +0000 (22:08 +0000)]
Fix encoding of rotates, such as rldicl

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29128 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoHandle instructions in the map, but that map to a null pointer.
Chris Lattner [Wed, 12 Jul 2006 21:37:11 +0000 (21:37 +0000)]
Handle instructions in the map, but that map to a null pointer.
This unbreaks smg2000.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29127 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIndVars now (correctly) preserves LCSSA form.
Owen Anderson [Wed, 12 Jul 2006 21:29:14 +0000 (21:29 +0000)]
IndVars now (correctly) preserves LCSSA form.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29126 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoImplement PPC64 relocations types
Chris Lattner [Wed, 12 Jul 2006 21:23:20 +0000 (21:23 +0000)]
Implement PPC64 relocations types

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29125 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAn overaggressive #ifdef allows a function to fall off the bottom of the
Chris Lattner [Wed, 12 Jul 2006 20:42:10 +0000 (20:42 +0000)]
An overaggressive #ifdef allows a function to fall off the bottom of the
function instead of returning a value.  This sometimes allowed the ppc32 jit
to be used in 64-bit mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29123 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMove base value of instruction to lookup table to prepare for case reduction.
Jim Laskey [Wed, 12 Jul 2006 19:15:43 +0000 (19:15 +0000)]
Move base value of instruction to lookup table to prepare for case reduction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29122 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIn addition to deleting calls, the inliner can constant fold them as well.
Chris Lattner [Wed, 12 Jul 2006 18:37:18 +0000 (18:37 +0000)]
In addition to deleting calls, the inliner can constant fold them as well.
Handle this case, which doesn't require a new callgraph edge.  This fixes
a crash compiling MallocBench/gs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29121 91177308-0d34-0410-b5e6-96231b3b80d8