Reid Spencer [Mon, 7 Aug 2006 23:23:39 +0000 (23:23 +0000)]
Make the name of the project consistent with that specified in the
configure.ac file. This fixes some case-consistency issues between the name
of the tarball created by "make dist" and the tarball used for source when
building the LLVM RPM package.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29554
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 23:20:15 +0000 (23:20 +0000)]
Remove the use of "IncludeFile" from this support facility. The mechanism
to build a loadable module is now correctly defined and documented so this
workaround isn't needed any longer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29553
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 23:17:24 +0000 (23:17 +0000)]
Make this example pass use some things from lib/Support (EscapeString,
SlowOperatingInfo, Statistics). Besides providing an example of how to
use these facilities, it also serves to debug problems with runtime linking
when dlopening a loadable module. These three support facilities exercise
different combinations of Text/Weak Weak/Text and Text/Text linking
between the executable and the module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29552
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 23:12:15 +0000 (23:12 +0000)]
For PR780:
1. Change the usage of LOADABLE_MODULE so that it implies all the things
necessary to make a loadable module. This reduces the user's burdern to
get a loadable module correctly built.
2. Document the usage of LOADABLE_MODULE in the MakefileGuide
3. Adjust the makefile for lib/Transforms/Hello to use the new specification
for building loadable modules
4. Adjust the sample project to not attempt to build a shared library for
its little library. This was just wasteful and not instructive at all.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29551
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Aug 2006 23:03:03 +0000 (23:03 +0000)]
Revamp the "CSEMap" datastructure used in the SelectionDAG class. This
eliminates a bunch of std::map's in the SelectionDAG, replacing them with a
home-grown hashtable.
This is still a work in progress: not all the maps have been moved over and the
hashtable never resizes. That said, this still speeds up llc 20% on kimwitu++
with -fast -regalloc=local using a release build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29550
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 7 Aug 2006 22:28:20 +0000 (22:28 +0000)]
Match tablegen isel changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29549
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 7 Aug 2006 22:17:58 +0000 (22:17 +0000)]
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
Evan Cheng [Mon, 7 Aug 2006 22:16:08 +0000 (22:16 +0000)]
Move DAGSize to SelectionDAGISel; it's used in tablegen'd isel code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29547
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 7 Aug 2006 22:13:29 +0000 (22:13 +0000)]
Clear TopOrder before assigning topological order. Some clean ups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29546
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 7 Aug 2006 22:12:12 +0000 (22:12 +0000)]
Reverse the FlaggedNodes after scanning up for flagged preds or else the order would be reversed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29545
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 7 Aug 2006 21:02:39 +0000 (21:02 +0000)]
Make XMM, FP register dwarf register numbers consistent with gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29543
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Aug 2006 05:45:34 +0000 (05:45 +0000)]
Add a clear method to SmallVector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29542
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 05:36:24 +0000 (05:36 +0000)]
Remove extraneous #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29541
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 05:34:08 +0000 (05:34 +0000)]
Make the removal of files use Path::eraseFromDisk just like it does for
the removal of directories. Using std::remove is indiscriminate and can
lead to the removal of things like /dev/null if run as root. The
Path::eraseFromDisk method ensures that we only ever remove regular files
or directories, but never character or block special nodes. This should
clear up the problem with usage like: llvm-as -o /dev/null which is used
in the llvm-test makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29540
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 7 Aug 2006 05:20:05 +0000 (05:20 +0000)]
Add a note about how the "isFile" check in Path::eraseFromDisk prevents
the erasure of non-file paths like /dev/null.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29539
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Mon, 7 Aug 2006 01:54:37 +0000 (01:54 +0000)]
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
Patrick Jenkins [Sun, 6 Aug 2006 21:47:43 +0000 (21:47 +0000)]
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
Chris Lattner [Sun, 6 Aug 2006 18:12:50 +0000 (18:12 +0000)]
Silence a warning on x86-64, reported by chandlerc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29535
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 5 Aug 2006 17:31:00 +0000 (17:31 +0000)]
This causes some random crashes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29534
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 4 Aug 2006 22:55:53 +0000 (22:55 +0000)]
Fixed typo. Thanks, Reid.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29533
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 4 Aug 2006 21:52:23 +0000 (21:52 +0000)]
Removed usage of "sort", which can lead to undeterministic behavior on mingw & cygwin platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29532
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Fri, 4 Aug 2006 21:42:58 +0000 (21:42 +0000)]
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
Devang Patel [Fri, 4 Aug 2006 19:10:26 +0000 (19:10 +0000)]
Collect references from globals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29530
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 4 Aug 2006 18:18:08 +0000 (18:18 +0000)]
Update the auto* tools: autoconf 2.60, libtool 1.5.22, automake 1.9.6.
Update ltld.[ch] to version 1.5.22.
Correct the notes about updating these tools (autoconf/README.TXT)
Add configure options for getting the correct option for including a whole
archive when linking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29529
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 4 Aug 2006 18:10:12 +0000 (18:10 +0000)]
Added how to add machine passes to command line options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29528
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 Aug 2006 18:09:27 +0000 (18:09 +0000)]
converge on the right number of %'s :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29527
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Fri, 4 Aug 2006 17:55:01 +0000 (17:55 +0000)]
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
Patrick Jenkins [Fri, 4 Aug 2006 17:53:27 +0000 (17:53 +0000)]
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
Chris Lattner [Fri, 4 Aug 2006 17:45:20 +0000 (17:45 +0000)]
Make SelectionDAG::RemoveDeadNodes iterative instead of recursive, which
also make it simpler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29524
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Fri, 4 Aug 2006 17:40:54 +0000 (17:40 +0000)]
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
Reid Spencer [Fri, 4 Aug 2006 17:35:18 +0000 (17:35 +0000)]
Use the %llvm-gcc% variable to find llvm-gcc for those of us that don't
have it in our path and to ensure it uses the configured llvm-gcc not just
any one randomly placed in the path.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29522
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 4 Aug 2006 12:48:42 +0000 (12:48 +0000)]
use a 'register pressure reducing' scheduler
make sure only one move is used in a hello world
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29520
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 3 Aug 2006 22:50:11 +0000 (22:50 +0000)]
Bug fix: always generate a RET_FLAG in LowerRET
fixes ret_null.ll and call.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29519
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 22:14:43 +0000 (22:14 +0000)]
updated CVS server location
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29518
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 3 Aug 2006 21:46:42 +0000 (21:46 +0000)]
For PR845:
Enable the makefile check on the result of find-cycles.pl. LLVM is now
cycle free and we intend to keep it that way. This patch will fail the
build if cycles are found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29517
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 3 Aug 2006 21:45:35 +0000 (21:45 +0000)]
Fix a typo in the name of expand_dependencies.
Make the dependency line pattern match handle white space better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29516
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 21:40:24 +0000 (21:40 +0000)]
Fix PR867 (and maybe 868) and testcsae:
Transforms/SimplifyCFG/2006-08-03-Crash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29515
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 21:39:41 +0000 (21:39 +0000)]
new testcase for pr867
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29514
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 3 Aug 2006 20:56:35 +0000 (20:56 +0000)]
Applying for all.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29512
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 3 Aug 2006 20:51:06 +0000 (20:51 +0000)]
Copy the liveins for the first block. PR859
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29511
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 3 Aug 2006 20:49:29 +0000 (20:49 +0000)]
Make all the schedulers continue to work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29510
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 3 Aug 2006 19:10:03 +0000 (19:10 +0000)]
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
Chris Lattner [Thu, 3 Aug 2006 18:57:28 +0000 (18:57 +0000)]
update comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29507
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 18:55:44 +0000 (18:55 +0000)]
remove some more dead sparcv9 support stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29506
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 18:51:04 +0000 (18:51 +0000)]
remove a dead proto
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29505
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 3 Aug 2006 17:27:09 +0000 (17:27 +0000)]
Get darwin intel debugging up and running.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29504
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Aug 2006 17:26:30 +0000 (17:26 +0000)]
Make it fit into 80-columns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29503
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Aug 2006 17:25:36 +0000 (17:25 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29502
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Aug 2006 17:18:45 +0000 (17:18 +0000)]
Simplify. Use addprefix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29501
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 3 Aug 2006 17:02:20 +0000 (17:02 +0000)]
add and use ARMISD::RET_FLAG
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29499
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 16:59:17 +0000 (16:59 +0000)]
Now that SparcV9 is gone, this logical can be simplified significantly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29498
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Aug 2006 16:34:35 +0000 (16:34 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29497
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Thu, 3 Aug 2006 16:28:58 +0000 (16:28 +0000)]
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
Devang Patel [Thu, 3 Aug 2006 16:14:09 +0000 (16:14 +0000)]
Remove ARM for the moment since it is a work in progress.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29495
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 3 Aug 2006 15:44:57 +0000 (15:44 +0000)]
Add new tool, lto, to do link time optimization. This tool installs
dynamic library that linker can use to optimize llvm byte codes at
link time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29494
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 06:34:50 +0000 (06:34 +0000)]
Changes:
1. Update an obsolete comment.
2. Make the sorting by base an explicit (though still N^2) step, so
that the code is more clear on what it is doing.
3. Partition uses so that uses inside the loop are handled before uses
outside the loop.
Note that none of these changes currently changes the code inserted by LSR,
but they are a stepping stone to getting there.
This code is the result of some crazy pair programming with Nate. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29493
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 00:42:26 +0000 (00:42 +0000)]
Remove some extraneous newlines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29492
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 00:26:13 +0000 (00:26 +0000)]
Really add support for compilers without noinline
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29491
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 00:18:59 +0000 (00:18 +0000)]
Work around a GCC 3.3.5 bug noticed by a user.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29490
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Aug 2006 00:16:56 +0000 (00:16 +0000)]
Work around a bug in gcc 3.3.5, reported by a user
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29489
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Wed, 2 Aug 2006 23:48:07 +0000 (23:48 +0000)]
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
Evan Cheng [Wed, 2 Aug 2006 22:01:32 +0000 (22:01 +0000)]
Reflect change to AssignTopologicalOrder().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29480
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 2 Aug 2006 22:00:34 +0000 (22:00 +0000)]
- Change AssignTopologicalOrder to return vector of SDNode* by reference.
- Tweak implementation to avoid using std::map.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29479
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 2 Aug 2006 21:58:44 +0000 (21:58 +0000)]
AssignTopologicalOrder now returns the vector of SDNode* by reference to
avoid the expensive operation of copying a vector.
It also returns a maximum id by value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29478
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 2 Aug 2006 20:15:56 +0000 (20:15 +0000)]
If the Program name was NULL then all further output sent to std::cerr was
suppressed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29477
91177308-0d34-0410-b5e6-
96231b3b80d8
Patrick Jenkins [Wed, 2 Aug 2006 18:37:40 +0000 (18:37 +0000)]
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
Jim Laskey [Wed, 2 Aug 2006 12:30:23 +0000 (12:30 +0000)]
Final polish on machine pass registries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29471
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 2 Aug 2006 12:27:50 +0000 (12:27 +0000)]
Breaking out specialized classes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29470
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 2 Aug 2006 09:18:33 +0000 (09:18 +0000)]
Use of vector<bool> causes some horrendous compile time regression (2x)!
Looks like libstdc++ implementation does not scale very well. Switch back
to using directly managed arrays.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29469
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Wed, 2 Aug 2006 05:31:20 +0000 (05:31 +0000)]
Update the readme to remove duplicate information and clarify the loop
problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29468
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Wed, 2 Aug 2006 05:29:40 +0000 (05:29 +0000)]
Disable LSR at -fast
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29467
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Aug 2006 00:16:47 +0000 (00:16 +0000)]
Add special check to avoid isLoop call. Simple, but doesn't seem to speed
up lcssa much in practice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29465
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Aug 2006 00:14:16 +0000 (00:14 +0000)]
Speed up Loop::isLCSSAForm by using a binary search and single-entry cache.
This reduces LCSSA pass time from 1.5s to 0.96s when run on eon in release+asserts mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29464
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Aug 2006 00:06:09 +0000 (00:06 +0000)]
Replace the SSA update code in LCSSA with a bottom-up approach instead of a top
down approach, inspired by discussions with Tanya.
This approach is significantly faster, because it does not need dominator
frontiers and it does not insert extraneous unused PHI nodes. For example, on
252.eon, in a release-asserts build, this speeds up LCSSA (which is the slowest
pass in gccas) from 9.14s to 0.74s on my G5. This code is also slightly smaller
and significantly simpler than the old code.
Amusingly, in a normal Release build (which includes the
"assert(L->isLCSSAForm());" assertion), asserting that the result of LCSSA
is in LCSSA form is actually slower than the LCSSA transformation pass
itself on 252.eon. I will see if Loop::isLCSSAForm can be sped up next.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29463
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 22:34:35 +0000 (22:34 +0000)]
Fix the build on case-sensitive filesystems :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 22:24:47 +0000 (22:24 +0000)]
Add dominates/properlyDominates queries to IDom.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29456
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 1 Aug 2006 19:14:14 +0000 (19:14 +0000)]
Now that the ISel is available, it's possible to create a default instruction
scheduler creator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29452
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 1 Aug 2006 18:53:10 +0000 (18:53 +0000)]
start comments with #
move the constant pool to .text
correctly print loads of labels
mark R0, R1, R2 and R3 as caller save
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29451
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 1 Aug 2006 18:29:48 +0000 (18:29 +0000)]
1. Change use of "Cache" to "Default".
2. Added argument to instruction scheduler creators so the creators can do
special things.
3. Repaired target hazard code.
4. Misc.
More to follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29450
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 18:22:21 +0000 (18:22 +0000)]
no need to check readability here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29449
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 18:16:02 +0000 (18:16 +0000)]
Remove some now-dead methods. Use getFileStatus instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29447
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 18:12:29 +0000 (18:12 +0000)]
No need to check isWriteable here (which isn't sufficient anyway). Just attempt
to do the operation and if it fails, oh well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29446
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 18:09:46 +0000 (18:09 +0000)]
Use Path::getFileStatus
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29445
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 18:04:01 +0000 (18:04 +0000)]
Use Path::getFileStatus to get status-related info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 17:59:14 +0000 (17:59 +0000)]
Use getFileStatus instead of Path::isDirectory().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29443
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 17:51:09 +0000 (17:51 +0000)]
elimiante some syscalls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29442
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 1 Aug 2006 16:52:07 +0000 (16:52 +0000)]
Update my entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29438
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Aug 2006 16:40:42 +0000 (16:40 +0000)]
Update Bil's entry
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29437
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 1 Aug 2006 16:31:08 +0000 (16:31 +0000)]
Forgot the added files for plugable machine passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29436
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 1 Aug 2006 16:23:54 +0000 (16:23 +0000)]
Fix HTML 4.01 Strict errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29435
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 1 Aug 2006 14:21:23 +0000 (14:21 +0000)]
Introducing plugable register allocators and instruction schedulers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29434
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 1 Aug 2006 12:58:43 +0000 (12:58 +0000)]
implement LowerConstantPool and LowerGlobalAddress
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29433
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Tue, 1 Aug 2006 09:01:40 +0000 (09:01 +0000)]
Adding to credibility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29432
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 1 Aug 2006 08:20:41 +0000 (08:20 +0000)]
Added AssignTopologicalOrder() to assign each node an unique id based on their topological order.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29431
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 1 Aug 2006 08:17:22 +0000 (08:17 +0000)]
Factor topological order code to SelectionDAG. Clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29430
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 1 Aug 2006 08:09:03 +0000 (08:09 +0000)]
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
Anton Korobeynikov [Tue, 1 Aug 2006 08:07:22 +0000 (08:07 +0000)]
Minor fix due to recent API changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29428
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 1 Aug 2006 07:38:39 +0000 (07:38 +0000)]
Update to include new options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29426
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 1 Aug 2006 07:32:01 +0000 (07:32 +0000)]
Update library dependency information, describe new libraries, talk a
little about llvm-config as a source for help with library dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29425
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 1 Aug 2006 07:06:00 +0000 (07:06 +0000)]
Added myself to credits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29424
91177308-0d34-0410-b5e6-
96231b3b80d8