Commit Graph

1117 Commits

Author SHA1 Message Date
Chris Lattner
bd564bfc63 Start eliminating temporary vectors used to create DAG nodes. Instead, pass
in the start of an array and a count of operands where applicable.  In many
cases, the number of operands is known, so this static array can be allocated
on the stack, avoiding the heap.  In many other cases, a SmallVector can be
used, which has the same benefit in the common cases.

I updated a lot of code calling getNode that takes a vector, but ran out of
time.  The rest of the code should be updated, and these methods should be
removed.

We should also do the same thing to eliminate the methods that take a
vector of MVT::ValueTypes.

It would be extra nice to convert the dagiselemitter to avoid creating vectors
for operands when calling getTargetNode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29566 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 02:23:42 +00:00
Patrick Jenkins
4257ccb1a7 Removed unneccesary output from nightly tester
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29565 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 02:03:53 +00:00
Evan Cheng
9bdca0302a Making TableGen'd instruction selection code non-recursive. This fixes PR805.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29548 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-07 22:17:58 +00:00
Patrick Jenkins
e8501eb1bb Reinstated the sending of a list of all dejagnutests run. Also fixed a rather embarresing error introduced during version 1.41 where i commented out the actual sending of the data to the results server.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29538 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-07 01:54:37 +00:00
Patrick Jenkins
1c3bf94a42 no longer sending the list of all dejagnu tests because it is too big at the present time
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29537 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-06 21:47:43 +00:00
Patrick Jenkins
cf65fb6503 Changed a = to a .= so we now append tests we have performed to the master list of all tests instead of assigning it as the master list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29531 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-04 21:42:58 +00:00
Patrick Jenkins
e631c4a5b2 Made some more changes to the print statements in the nightly tester. The last commit was a preemptive strike.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29526 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-04 17:55:01 +00:00
Patrick Jenkins
ea103a86fa Encapsulated all of the print statements in "if( $VERBOSE) { }". The testing script will be absoutely silent now except for errors, which will still be printed to the annoyance of the user.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29525 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-04 17:53:27 +00:00
Patrick Jenkins
7e5c373d07 We should now send the correct list of dejagnu tests instead of the csv file of test results when we submit results back to the nightly tester.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29523 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-04 17:40:54 +00:00
Reid Spencer
d0fa46aa62 Print an error message if the lib directory (first argument) is not a
directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29508 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-03 19:10:03 +00:00
Patrick Jenkins
69d3a95b17 One of the directories we were searching in for .o and .a files was wrong. We now search /lib instead of /libs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29496 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-03 16:28:58 +00:00
Chris Lattner
58d63567ea Remove some extraneous newlines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29492 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-03 00:42:26 +00:00
Chris Lattner
32501a0e33 Really add support for compilers without noinline
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29491 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-03 00:26:13 +00:00
Patrick Jenkins
59a2798a32 We now only search the following directories for .o and .a files:
utils/
libs/
tools/
Release/ & Debug/
as per Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29488 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-02 23:48:07 +00:00
Patrick Jenkins
d7210f9dba Removed some dead code and hopefully fixed the issue where the total list of tests was not being sent
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29476 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-02 18:37:40 +00:00
Reid Spencer
9bf2e7f53d Fix a problem with use of undefined variables. Print an error message if
the first argument is omitted. Attempt to use a standard/default font.
Make the generation of the DOT file readable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29429 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-01 08:09:03 +00:00
Evan Cheng
d3f8429f01 Pass N by reference to select functions to prevent gcc from allocating more stack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29423 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-01 01:07:48 +00:00
Evan Cheng
6966c48767 Remove an unneeded match condition: the type check for root node has been
moved to outside the actual select routine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29415 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-31 19:01:58 +00:00
Andrew Lenharth
e36de54797 fix externals
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29409 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-29 04:27:34 +00:00
Evan Cheng
b6ee7f73e5 Split each select function for a particular opcode into multiple ones. One
per possible ValueType of the node. e.g. Select_add is split into Select_add_i8,
Select_add_i16, etc.

For opcodes which do not produce a non-chain result, it is split on the
ValueType of its first non-chain operand. e.g. Select_store.

On X86 / Mac OS X, Select_store used to be the largest function. It had a stack
frame size of 8.5k. Now the largest one is Store_i32 with a frame size of 3.1k.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29404 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-28 22:51:01 +00:00
Evan Cheng
dc7a66a081 Clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29378 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-28 01:19:22 +00:00
Patrick Jenkins
0dd7fb2766 Removed some unneccesary printing from the nightly tester.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29377 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-28 01:06:18 +00:00
Evan Cheng
f2dfafcbc1 Rename IsFoldableBy to CanBeFoldedleBy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29376 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-28 01:03:48 +00:00
Evan Cheng
2641cad180 Remove InFlightSet hack. No longer needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29373 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-28 00:47:19 +00:00
Reid Spencer
1bc686433b Changes to support cross-compiling LLVM. The GenLibDeps.pl script needs to
have a compile-host version of "nm", not build-host. In order to effect this
we must use autoconf to determine the correct "nm" to use and propagate that
through the makefiles, through llvm-config and finally to GenLibDeps.pl as
an optional argument.
Patch contributed by Anton Korobeynikov. Thanks!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29368 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 23:00:30 +00:00
Patrick Jenkins
d4623e974c Removed some unneccesary print statemnts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29362 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 21:01:39 +00:00
Patrick Jenkins
96970e9a5c ChangeDir now returns the correct value
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29361 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 20:21:26 +00:00
Evan Cheng
3aac4d58e4 Remove dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29359 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 19:59:34 +00:00
Patrick Jenkins
278a6b5045 Fixed a stupid error where changedir returned false upon success.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29357 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 19:22:06 +00:00
Patrick Jenkins
c281b0d9a4 Added more descriptive output to singlesource,multisource tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29353 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 19:00:01 +00:00
Patrick Jenkins
59d1a66b82 Removed some clutter that was left over from development.
Changed how changedir worked. Hopefully now when it fails it will tell us why.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29352 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 18:28:50 +00:00
Evan Cheng
b2c121ac14 Let each target specific isel provide routine to check if a chain producing node is foldable by another.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29335 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 06:36:49 +00:00
Patrick Jenkins
cc8414ffdb I made a stupid mistake when adding support for -use-gmake. ~PJ
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29321 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 01:24:35 +00:00
Patrick Jenkins
1cd469124c added support for the -use-gmake option. This will come in handy when running the test on SunOS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29319 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 01:17:17 +00:00
Patrick Jenkins
f58473f416 This change will allow support for SunOS to the testing script. It adds a check to see if we're running on SunOS and if so, then uses gmake instead of make.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29316 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-27 01:03:46 +00:00
Evan Cheng
233baf1c4b Fix for bug 840. Only use noinline attribute if gcc version >= 3.4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29311 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-26 23:06:27 +00:00
Reid Spencer
c152efda47 Add a feature for debugging library dependency cycles, -why option. This
implies -flat and will produce a list of all the symbols for each library
that another library depends on. Run the output through c++filt for
better readability. Also, don't generate a temporary file for storing the
dependent library names. Perl can handle it in a %hash.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29273 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-25 19:12:06 +00:00
Patrick Jenkins
26ba6095df Fixing a syntax error and adding buildtype to the .a and .o file size information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29270 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-23 22:57:28 +00:00
Patrick Jenkins
169357e3dd When the ability to gather .a and .o file sizes was added, it changed the directory the perl script was in so when we tried to run dejagnu tests, everything failed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29269 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-23 21:38:07 +00:00
Patrick Jenkins
fcf207b3f7 added status message during nightly test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29263 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-22 00:00:08 +00:00
Evan Cheng
e6389935a9 Removed a hack intended to allow (store (op (load))) folding. Will handle this with preprocessing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29258 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 22:19:51 +00:00
Patrick Jenkins
25c2a2f570 Added a check to skip dejagnu test results gathering if we did not run dejagnu tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29252 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 21:58:06 +00:00
Patrick Jenkins
b67e118545 Fixed an issue of variable scope that prevented file size from being submitted to the server.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29251 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 21:43:09 +00:00
Jim Laskey
cd4317efcf Eliminate data relocations by using NULL instead of global empty list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29250 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 21:15:20 +00:00
Jim Laskey
60f09928a0 Use an enumeration to eliminate data relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29249 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 20:57:35 +00:00
Patrick Jenkins
6412f72b09 Added code to get .a and .o file sizes and submit them to the server in the nightly report.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29248 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 19:51:40 +00:00
Patrick Jenkins
49717a4ee5 Fixed issue where nightly test always tells you you need to use -nickname
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29241 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 01:39:42 +00:00
Patrick Jenkins
1f556c29e3 The nightly tester will no longer report numbers instead of tests performed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29240 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-21 01:34:01 +00:00
Evan Cheng
eb1f40d3af Also checks for noResults field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29235 91177308-0d34-0410-b5e6-96231b3b80d8
2006-07-20 23:36:20 +00:00
Patrick Jenkins
514e258994 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
2006-07-20 22:28:43 +00:00