Commit Graph

8998 Commits

Author SHA1 Message Date
Chris Lattner b2d575769b Give gccld more guts
llvm-svn: 9835
2003-11-09 19:55:09 +00:00
Chris Lattner 9a010038f1 More additions
llvm-svn: 9834
2003-11-09 19:54:30 +00:00
Chris Lattner 881cb48619 Bugz bugz bugz
llvm-svn: 9833
2003-11-09 19:44:07 +00:00
Chris Lattner a570f7b681 Fix PR95. I'm checking this patch in for Reid Spencer, who figured it out
and wrote it up.  Thanks!!

llvm-svn: 9832
2003-11-09 19:39:48 +00:00
Chris Lattner da8571b464 Add an assertion
llvm-svn: 9831
2003-11-09 15:51:07 +00:00
Brian Gaeke 75bc7cec4b Fix PR103
llvm-svn: 9830
2003-11-09 07:08:34 +00:00
Chris Lattner b09ad87eb9 New testcase
llvm-svn: 9829
2003-11-09 07:05:02 +00:00
Chris Lattner 984e11792f Do NOT inline self recursive calls into other functions. This is causing the
pool allocator no end of trouble, and doesn't make a lot of sense anyway.  This
does not solve the problem with mutually recursive functions, but they are much less common.

llvm-svn: 9828
2003-11-09 05:05:36 +00:00
Chris Lattner d61abe82d3 Untypo
llvm-svn: 9827
2003-11-09 05:04:25 +00:00
Chris Lattner 950c75f135 Add more functions
llvm-svn: 9826
2003-11-09 04:10:41 +00:00
Chris Lattner 5011b956a9 None of the __llvm_* functions call into the program. This makes the
callgraph MUCH simpler for eh using program.

llvm-svn: 9825
2003-11-09 04:00:59 +00:00
Chris Lattner cff83a2f24 Add support for memmove
llvm-svn: 9824
2003-11-09 03:32:52 +00:00
Brian Gaeke c3c242c3ac Remove #include of PassManager.h which was marked FIXME, and apparently is no
longer used.

llvm-svn: 9823
2003-11-09 03:15:40 +00:00
Chris Lattner 9a06c2bc25 Totally disable assert, in order to fix PR101
llvm-svn: 9818
2003-11-09 00:29:51 +00:00
Chris Lattner 3faf03a00f new testcase
llvm-svn: 9817
2003-11-09 00:23:05 +00:00
Chris Lattner 123ba49839 new testcase
llvm-svn: 9815
2003-11-08 23:00:49 +00:00
Chris Lattner 12dd38aa99 Handle bzero and memset in the local analysis, because we were missing the fact
that memset returns its argument!!

llvm-svn: 9811
2003-11-08 21:55:50 +00:00
Chris Lattner c129e009eb Fix broken makefile dependency generation
llvm-svn: 9810
2003-11-08 21:23:06 +00:00
Chris Lattner 2cb1db763e This doesn't use DSCallSiteIterator
llvm-svn: 9809
2003-11-08 21:17:37 +00:00
Chris Lattner 5c94491743 * Add units to the yaxis of each chart
* Add charts to the nightly test report

llvm-svn: 9808
2003-11-08 20:48:39 +00:00
Chris Lattner 1388c6765f Since we are collecting all of this data, we might as well graph it!
llvm-svn: 9807
2003-11-08 20:33:04 +00:00
Brian Gaeke f8cb2419ee Fix two typos I found in comments.
llvm-svn: 9806
2003-11-08 18:12:24 +00:00
Chris Lattner 14b5d5a98e Update the portability section
llvm-svn: 9803
2003-11-08 05:22:09 +00:00
Chris Lattner 699a58d77a sjlj bug
llvm-svn: 9802
2003-11-08 05:18:50 +00:00
Chris Lattner 78396549bc Fix wierd problems linking C programs which look for symbols in libstdc++.
This was due to the 'assert' macro expanding into a function call on some
platforms which could throw.  The C++ compiler then added checks for the
exception specifications in these functions, which pulled in the C++ runtime.
This was bad, and the assertions can never fire (the library is now debugged)
so just remove them.

llvm-svn: 9801
2003-11-08 05:13:40 +00:00
Chris Lattner 4491de6e97 Add news from brian
llvm-svn: 9800
2003-11-08 04:28:55 +00:00
Misha Brukman 7630785925 First pass at cleaning up LangRef.html: stylesheet-ification, consistent
formatting, more strict adherence to HTML 4.01, other misc. cleanups.

llvm-svn: 9799
2003-11-08 01:05:38 +00:00
Misha Brukman a1eefa40dc For some reason, LICM and GCSE like to crash the FunctionPassManager when they
are being added as FunctionPasses... Sigh.

llvm-svn: 9798
2003-11-08 00:01:39 +00:00
Chris Lattner 59c3985777 Provide a specialization of _Alloc_traits, which allows the G++ runtime to avoid
storing an instance of the allocator in each data structure it uses.  Yaay.

llvm-svn: 9795
2003-11-07 23:20:56 +00:00
Brian Gaeke 9ef636c698 Implement vaarg instruction. This is not quite perfect: 2003-08-11-VaListArg
still causes a crash. But it's better than before.

llvm-svn: 9794
2003-11-07 21:20:47 +00:00
Misha Brukman 508cc3e7a9 Implement branching to a PC-relative constant (not a BasicBlock).
llvm-svn: 9793
2003-11-07 21:07:30 +00:00
Brian Gaeke 85baf8c65a popStackAndReturnValueToCaller() must advance instruction pointer to normal
destination, if returning from an invoke.

Implement 'unwind' instruction.

llvm-svn: 9792
2003-11-07 20:44:58 +00:00
Misha Brukman 3b2343eae9 PreSelection is not optional, it performs a necessary and vital transformation
for the Sparc backend: breaking up constant expressions. Thus, we cannot have it
guarded by a conditional, it should never be disabled.

Also, it's now available for the JIT since it is a FunctionPass.

llvm-svn: 9791
2003-11-07 20:33:25 +00:00
Misha Brukman d7bcd99325 Remove the *BIG UGLY HACK* from the JIT: PreSelection is now a FunctionPass.
llvm-svn: 9790
2003-11-07 20:32:08 +00:00
Brian Gaeke 6d145eb65f Add stub version of unwind support
llvm-svn: 9789
2003-11-07 20:07:06 +00:00
Brian Gaeke a6454d3532 visitCallInst --> visitCallSite.
Use visitCallSite to implement both CallInsts and InvokeInsts.

llvm-svn: 9788
2003-11-07 20:04:22 +00:00
Brian Gaeke a6d48e4db2 Make the operation of visitCallInst() only depend on the CallSite.
llvm-svn: 9787
2003-11-07 19:59:08 +00:00
Misha Brukman 560e989585 Completely hacked apart the file and put it back together using stylesheets.
llvm-svn: 9786
2003-11-07 19:43:14 +00:00
Misha Brukman 403ff618bc Actually have a target "#introduction" if we're making a link to it.
llvm-svn: 9785
2003-11-07 19:42:44 +00:00
Brian Gaeke 18b59578c9 Use CallSites for call sites, instead of CallInsts. A revolutionary concept.
llvm-svn: 9784
2003-11-07 19:26:23 +00:00
Brian Gaeke f578c05d57 Mention class CallSite
llvm-svn: 9783
2003-11-07 19:25:45 +00:00
Brian Gaeke a730103518 Add a warning about not "new"ing or "delete"ing CallSites
llvm-svn: 9782
2003-11-07 19:25:22 +00:00
Misha Brukman d3af61d883 Added ability to register FunctionPasses as optimizations, with
TargetMachine-accepting constructors (thanks to Chris).

llvm-svn: 9781
2003-11-07 18:56:32 +00:00
Misha Brukman 7120c837fb Make the page footer consistent with the rest of the site.
llvm-svn: 9779
2003-11-07 18:11:14 +00:00
Misha Brukman 2c3068026a Switch to emitting MachineConstantPool the way it was meant to be done.
llvm-svn: 9777
2003-11-07 18:06:26 +00:00
Misha Brukman 2133b0513d Switch to using the standard representation of the constant pool -- namely, the
MachineConstantPool. This involved refactoring the two classes involved in
printing out Sparc assembly. In fact, they should share all this code anyway.

llvm-svn: 9776
2003-11-07 17:45:28 +00:00
Misha Brukman faa42d264f We accept TargetMachine as a const reference.
llvm-svn: 9775
2003-11-07 17:44:18 +00:00
Misha Brukman bd4a8ed139 PreSelection and PeepholeOpts are now FunctionPasses.
llvm-svn: 9774
2003-11-07 17:43:43 +00:00
Misha Brukman 81c748c1e2 * Stop making a global for each constant that cannot live in an instruction;
it will be converted to a MachineConstantPool index during instruction
  selection
* This is now eligible to become a FunctionPass since it does not have any side
  effects outside of the function it is processing.

llvm-svn: 9773
2003-11-07 17:31:22 +00:00
Misha Brukman bf9ed7ac1f * Use the MachineConstantPool for storing constants instead of a hash_set;
* Do not create new globals for constants!

Also, order #includes as per coding style guide

llvm-svn: 9772
2003-11-07 17:29:48 +00:00