Commit Graph

810 Commits

Author SHA1 Message Date
Evan Cheng
d4a056116c Allow patterns to refer to physical registers that belong to multiple
register classes.

llvm-svn: 28323
2006-05-16 07:05:30 +00:00
Reid Spencer
fa5fca78ee Don't try to reference uninitialized data. Make sure we can find "nm".
llvm-svn: 28277
2006-05-13 02:48:45 +00:00
Evan Cheng
409dd126bf Noop instruction
llvm-svn: 28241
2006-05-12 07:47:00 +00:00
Evan Cheng
3d1e1ffd9b Unused instruction
llvm-svn: 28240
2006-05-12 07:42:01 +00:00
Evan Cheng
d6549daf76 Also add super- register classes info.
llvm-svn: 28221
2006-05-11 07:30:26 +00:00
Evan Cheng
2af8a9f980 Watch out for the following case:
1. Use expects a chain output.
2. Node is expanded into multiple target ops.
3. One of the inner node produces a chain, the outer most one doesn't.

llvm-svn: 28209
2006-05-10 02:47:57 +00:00
Evan Cheng
0655b538d6 Fix a load folding bug. It is exposed by a multi- resulting instructions
def : Pat<> pattern.

llvm-svn: 28208
2006-05-10 00:05:46 +00:00
Evan Cheng
87b66b9aec Add sub-register class information.
llvm-svn: 28195
2006-05-09 06:34:26 +00:00
Reid Spencer
f1f21b12c7 Attempt to get this script working on Darwin.
llvm-svn: 28085
2006-05-03 18:16:01 +00:00
Evan Cheng
ca3dc213dc Set isStore of instructions with ISD::TRUNCSTORE root node.
llvm-svn: 28075
2006-05-03 02:08:34 +00:00
Chris Lattner
8cbad2f76a Put instruction names into the first non TargetInstrInfo namespace found.
llvm-svn: 28043
2006-05-01 23:46:16 +00:00
Chris Lattner
da6162633a instructions can be in different namespaces. Make sure to use the right
one for each instruction.

llvm-svn: 28038
2006-05-01 17:01:17 +00:00
Evan Cheng
0bae850dda Formating
llvm-svn: 28036
2006-05-01 09:30:17 +00:00
Evan Cheng
efcb0061df Mark instructions whose pattern is (store ...) isStore.
llvm-svn: 28032
2006-05-01 09:04:20 +00:00
Evan Cheng
9f21c2daf4 Remove the temporary option: -no-isel-fold-inflight
llvm-svn: 28012
2006-04-28 18:54:11 +00:00
Evan Cheng
3466555d87 When isel'ing a node, mark its operands "InFlight" before selecting them. These
nodes should not be folded into other nodes.
This fixes the miscompilation of PR 749.
Temporarily under flag control.

llvm-svn: 28002
2006-04-28 02:08:10 +00:00
Nate Begeman
7ed816f900 JumpTable support! What this represents is working asm and jit support for
x86 and ppc for 100% dense switch statements when relocations are non-PIC.
This support will be extended and enhanced in the coming days to support
PIC, and less dense forms of jump tables.

llvm-svn: 27947
2006-04-22 18:53:45 +00:00
Reid Spencer
5e33caae17 Remove the extraneous --defined-only option to nm. This is the default and
some versions of nm don't recognize it (its a gnu option).

llvm-svn: 27928
2006-04-21 05:29:25 +00:00
Reid Spencer
05e3e8fdc9 Don't require the "dot" program if -flat option is given, and don't produce
any of the fancy graphs or other output. Just produce the flat, makefile
style output on stdout.

llvm-svn: 27921
2006-04-20 23:09:57 +00:00
Reid Spencer
ff132fb460 Remove the llvm-config directory. Its now in tools.
llvm-svn: 27918
2006-04-20 21:16:32 +00:00
Reid Spencer
d9b9561f39 llvm-config doesn't live here anymore ==> tools
llvm-svn: 27917
2006-04-20 21:15:41 +00:00
Reid Spencer
a0ed587d20 Update the library dependencies for 1.8 with SparcV9 now gone.
llvm-svn: 27910
2006-04-20 19:50:53 +00:00
Reid Spencer
416e895b56 Remove Burg as a directory to be considered.
llvm-svn: 27906
2006-04-20 18:47:13 +00:00
Chris Lattner
12b122aa2e remove some stuff
llvm-svn: 27903
2006-04-20 18:43:59 +00:00
Reid Spencer
304e12f0ba Burg not needed any more now that SparcV9 is gone.
llvm-svn: 27901
2006-04-20 18:39:19 +00:00
Chris Lattner
56e4ca77c6 Don't fill in fields that no longer exist.
llvm-svn: 27898
2006-04-20 18:32:22 +00:00
Evan Cheng
adc5e703ca Rename AddedCost to AddedComplexity.
llvm-svn: 27841
2006-04-19 20:36:09 +00:00
Evan Cheng
318120f8ad Allow "let AddedCost = n in" to increase pattern complexity.
llvm-svn: 27834
2006-04-19 18:07:24 +00:00
Chris Lattner
d664951c95 Fix a build failure on Vladimir's tester.
llvm-svn: 27785
2006-04-18 00:21:25 +00:00
Chris Lattner
81fa159ca9 Encode a cost of zero as a cost of 1.
llvm-svn: 27745
2006-04-17 05:25:16 +00:00
Chris Lattner
d134f32a85 Really, I can count!
llvm-svn: 27743
2006-04-17 05:05:52 +00:00
Chris Lattner
aee09fc8aa assign stable opcodes to the various altivec ops.
llvm-svn: 27741
2006-04-17 00:47:18 +00:00
Chris Lattner
dab7d994ef PPCPerfectShuffle.h is autogenerated, don't include it in the LOC counts.
llvm-svn: 27740
2006-04-17 00:46:09 +00:00
Chris Lattner
dd8376ca78 Rename BuildShuffleTable -> PerfectShuffle
llvm-svn: 27738
2006-04-17 00:35:34 +00:00
Chris Lattner
4833bf9285 rename the table
llvm-svn: 27737
2006-04-17 00:33:35 +00:00
Chris Lattner
a6a36551d3 Initial checking of a perfect shuffle generation program for 4-element
Altivec vectors.

llvm-svn: 27736
2006-04-17 00:30:41 +00:00
Reid Spencer
860522ab68 Allow an option, -with-externals, to be specified that provides the location
of the external tests. This turns into --with-externals option to configure.

llvm-svn: 27700
2006-04-14 13:53:56 +00:00
Reid Spencer
599a575d0e Add missing things to the distribution.
llvm-svn: 27650
2006-04-13 06:27:20 +00:00
Chris Lattner
f4571f20bd one too many l's
llvm-svn: 27641
2006-04-13 04:21:31 +00:00
Reid Spencer
f51d58020e Fix a typo in the name of a file.
llvm-svn: 27636
2006-04-12 23:15:10 +00:00
Reid Spencer
486a137d9c Additional files to distribute.
llvm-svn: 27627
2006-04-12 20:54:01 +00:00
Reid Spencer
2790312ad7 Add the llvm-config directory to the EXTRA_DIST line so it gets distributed
even though its not being built currently. This prevents dist-check from
failing because configure can't find llvm-config.in.in

llvm-svn: 27623
2006-04-12 19:06:14 +00:00
Andrew Lenharth
d35df8adf9 make recovering running_Olden data easier when the nightly tester eats the graphs
llvm-svn: 27615
2006-04-12 17:41:19 +00:00
Chris Lattner
1659f983ff Fix a typo: Instr* -> Intr*
llvm-svn: 27568
2006-04-10 22:02:59 +00:00
Chris Lattner
9f8d5b538e Infer element types for shuffle masks
llvm-svn: 27456
2006-04-06 20:36:51 +00:00
Chris Lattner
7f54d730f1 rename a method, to avoid confusion with llvm intrinsics.
llvm-svn: 27455
2006-04-06 20:19:52 +00:00
Chris Lattner
9eacf6b01c Adjust the Intrinsics.gen interface a little bit
llvm-svn: 27345
2006-04-02 03:35:30 +00:00
Chris Lattner
914742aa1e regenerate
llvm-svn: 27313
2006-03-31 21:54:11 +00:00
Chris Lattner
5fabd2c311 Generalize the previous binary operator support and add a string concatenation
operation.  This implements Regression/TableGen/strconcat.td.

llvm-svn: 27312
2006-03-31 21:53:49 +00:00
Chris Lattner
ef86937943 Allow bits init values to be used in patterns, turn them into ints.
llvm-svn: 27286
2006-03-31 05:25:56 +00:00