Reid Spencer
dc30910fe0
Update the instructions for writing a pass as a loadable module per the
...
new definition in MakefileGuilde.html and Makefile.rules.
llvm-svn: 29563
2006-08-08 01:48:17 +00:00
Chris Lattner
03c7b425a2
add a new assign method
...
llvm-svn: 29562
2006-08-08 01:44:16 +00:00
Chris Lattner
be2fc7b875
Eliminate some malloc traffic by allocating vectors on the stack. Change some
...
method that took std::vector<SDOperand> to take a pointer to a first operand
and #operands.
This speeds up isel on kc++ by about 3%.
llvm-svn: 29561
2006-08-08 01:09:31 +00:00
Chris Lattner
3bb43d2173
Add ctor that initializes from a range.
...
llvm-svn: 29560
2006-08-08 00:37:50 +00:00
Evan Cheng
01cd84d113
Eliminate reachability matrix. It has to be calculated before any instruction
...
selection is done. That's rather expensive especially in situations where it
isn't really needed.
Move back to a searching the predecessors, but make use of topological order
to trim the search space.
llvm-svn: 29559
2006-08-08 00:31:00 +00:00
Evan Cheng
443ccaa0b3
New test case.
...
llvm-svn: 29558
2006-08-07 23:58:47 +00:00
Reid Spencer
e63b347fb9
Fix an anchor name.
...
llvm-svn: 29557
2006-08-07 23:44:59 +00:00
Chris Lattner
3e1a9b0188
Remove assertions from the SmallVector class. They slow down clients of
...
smallvector too much in a release build. Removing them speeds up isel 4%.
llvm-svn: 29556
2006-08-07 23:41:59 +00:00
Chris Lattner
8058dae7a7
New CSEMap datastructure impl
...
llvm-svn: 29555
2006-08-07 23:31:24 +00:00
Reid Spencer
2390c20f91
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.
llvm-svn: 29554
2006-08-07 23:23:39 +00:00
Reid Spencer
20aee8ad5d
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.
llvm-svn: 29553
2006-08-07 23:20:15 +00:00
Reid Spencer
dc0927cccf
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.
llvm-svn: 29552
2006-08-07 23:17:24 +00:00
Reid Spencer
3f5e3c843a
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.
llvm-svn: 29551
2006-08-07 23:12:15 +00:00
Chris Lattner
1661ffa2eb
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.
llvm-svn: 29550
2006-08-07 23:03:03 +00:00
Evan Cheng
d18be1d9c1
Match tablegen isel changes.
...
llvm-svn: 29549
2006-08-07 22:28:20 +00:00
Evan Cheng
c6627fc5d7
Making TableGen'd instruction selection code non-recursive. This fixes PR805.
...
llvm-svn: 29548
2006-08-07 22:17:58 +00:00
Evan Cheng
a42653b7ae
Move DAGSize to SelectionDAGISel; it's used in tablegen'd isel code.
...
llvm-svn: 29547
2006-08-07 22:16:08 +00:00
Evan Cheng
d64d5529b0
Clear TopOrder before assigning topological order. Some clean ups.
...
llvm-svn: 29546
2006-08-07 22:13:29 +00:00
Evan Cheng
0853250689
Reverse the FlaggedNodes after scanning up for flagged preds or else the order would be reversed.
...
llvm-svn: 29545
2006-08-07 22:12:12 +00:00
Evan Cheng
5d8f227a4a
Make XMM, FP register dwarf register numbers consistent with gcc.
...
llvm-svn: 29543
2006-08-07 21:02:39 +00:00
Chris Lattner
a4af471488
Add a clear method to SmallVector
...
llvm-svn: 29542
2006-08-07 05:45:34 +00:00
Reid Spencer
d06ae031ce
Remove extraneous #include.
...
llvm-svn: 29541
2006-08-07 05:36:24 +00:00
Reid Spencer
b1b1f483ed
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.
llvm-svn: 29540
2006-08-07 05:34:08 +00:00
Reid Spencer
ec2ce4eaab
Add a note about how the "isFile" check in Path::eraseFromDisk prevents
...
the erasure of non-file paths like /dev/null.
llvm-svn: 29539
2006-08-07 05:20:05 +00:00
Patrick Jenkins
9ca71b7632
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.
...
llvm-svn: 29538
2006-08-07 01:54:37 +00:00
Patrick Jenkins
e9d04e428a
no longer sending the list of all dejagnu tests because it is too big at the present time
...
llvm-svn: 29537
2006-08-06 21:47:43 +00:00
Chris Lattner
3bf9d47cf1
Silence a warning on x86-64, reported by chandlerc.
...
llvm-svn: 29535
2006-08-06 18:12:50 +00:00
Evan Cheng
627a71290f
This causes some random crashes.
...
llvm-svn: 29534
2006-08-05 17:31:00 +00:00
Anton Korobeynikov
5ab9a8d938
Fixed typo. Thanks, Reid.
...
llvm-svn: 29533
2006-08-04 22:55:53 +00:00
Anton Korobeynikov
0a95ed88c3
Removed usage of "sort", which can lead to undeterministic behavior on mingw & cygwin platforms.
...
llvm-svn: 29532
2006-08-04 21:52:23 +00:00
Patrick Jenkins
81b25121b6
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.
...
llvm-svn: 29531
2006-08-04 21:42:58 +00:00
Devang Patel
bb13b66737
Collect references from globals.
...
llvm-svn: 29530
2006-08-04 19:10:26 +00:00
Reid Spencer
982a99456c
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.
llvm-svn: 29529
2006-08-04 18:18:08 +00:00
Jim Laskey
ca845c5d7d
Added how to add machine passes to command line options.
...
llvm-svn: 29528
2006-08-04 18:10:12 +00:00
Chris Lattner
af5d449730
converge on the right number of %'s :)
...
llvm-svn: 29527
2006-08-04 18:09:27 +00:00
Patrick Jenkins
a24161d470
Made some more changes to the print statements in the nightly tester. The last commit was a preemptive strike.
...
llvm-svn: 29526
2006-08-04 17:55:01 +00:00
Patrick Jenkins
92b5a09795
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.
...
llvm-svn: 29525
2006-08-04 17:53:27 +00:00
Chris Lattner
154ffd3c8f
Make SelectionDAG::RemoveDeadNodes iterative instead of recursive, which
...
also make it simpler.
llvm-svn: 29524
2006-08-04 17:45:20 +00:00
Patrick Jenkins
0f14694533
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.
...
llvm-svn: 29523
2006-08-04 17:40:54 +00:00
Reid Spencer
f7a2abc102
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.
llvm-svn: 29522
2006-08-04 17:35:18 +00:00
Rafael Espindola
bd29d36be4
use a 'register pressure reducing' scheduler
...
make sure only one move is used in a hello world
llvm-svn: 29520
2006-08-04 12:48:42 +00:00
Rafael Espindola
97918b1d11
Bug fix: always generate a RET_FLAG in LowerRET
...
fixes ret_null.ll and call.ll
llvm-svn: 29519
2006-08-03 22:50:11 +00:00
Chris Lattner
328b5a3016
updated CVS server location
...
llvm-svn: 29518
2006-08-03 22:14:43 +00:00
Reid Spencer
d55c555011
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.
llvm-svn: 29517
2006-08-03 21:46:42 +00:00
Reid Spencer
8e0f0bfd98
Fix a typo in the name of expand_dependencies.
...
Make the dependency line pattern match handle white space better.
llvm-svn: 29516
2006-08-03 21:45:35 +00:00
Chris Lattner
b7442c1f8b
Fix PR867 (and maybe 868) and testcsae:
...
Transforms/SimplifyCFG/2006-08-03-Crash.ll
llvm-svn: 29515
2006-08-03 21:40:24 +00:00
Chris Lattner
0b3b64730c
new testcase for pr867
...
llvm-svn: 29514
2006-08-03 21:39:41 +00:00
Jim Laskey
b58da4d2f8
Applying for all.
...
llvm-svn: 29512
2006-08-03 20:56:35 +00:00
Jim Laskey
de4cc067a9
Copy the liveins for the first block. PR859
...
llvm-svn: 29511
2006-08-03 20:51:06 +00:00
Jim Laskey
2a449667b4
Make all the schedulers continue to work.
...
llvm-svn: 29510
2006-08-03 20:49:29 +00:00