Commit Graph

26876 Commits

Author SHA1 Message Date
Chris Lattner 0d236450aa implement DarwinTargetAsmInfo::getSectionForFunction, use it when outputting
function bodies

llvm-svn: 30733
2006-10-05 00:35:50 +00:00
Chris Lattner afe6d7a179 Give TargetAsmInfo a virtual dtor, add a new getSectionForFunction method.
llvm-svn: 30732
2006-10-05 00:35:16 +00:00
Chris Lattner 41e22a5419 emit jump table before debug info
llvm-svn: 30731
2006-10-05 00:26:05 +00:00
Chris Lattner aad26a19f0 Always emit the jump table after the function so it's part of the same 'atom'
as the function body.

llvm-svn: 30730
2006-10-05 00:24:46 +00:00
Chris Lattner 19721e8749 getFilename/getDirectory shouldn't abort if the global has no init. This
can happen on bugpoint reduced testcases f.e..

llvm-svn: 30729
2006-10-04 23:06:26 +00:00
Evan Cheng f80dfa83a0 Fix some typos that can cause a flag value to have more than one use.
llvm-svn: 30727
2006-10-04 22:23:53 +00:00
Chris Lattner c374ec43b5 Fix a static dtor issue
llvm-svn: 30726
2006-10-04 22:13:11 +00:00
Chris Lattner 8111c59279 Fix more static dtor issues
llvm-svn: 30725
2006-10-04 21:52:35 +00:00
Chris Lattner 538c6eb05c Fix some more static dtor issues.
llvm-svn: 30724
2006-10-04 21:49:37 +00:00
Evan Cheng 8c5766ef3f Added option -disable-x86-shuffle-opti to disable X86 specific vector shuffle optimizations.
llvm-svn: 30723
2006-10-04 18:33:38 +00:00
Evan Cheng 412aaabcbe Formating.
llvm-svn: 30722
2006-10-04 18:33:00 +00:00
Jim Laskey 708d0db2d8 More extensive alias analysis.
llvm-svn: 30721
2006-10-04 16:53:27 +00:00
Jim Laskey 0d5a0eae57 More long term solution
llvm-svn: 30720
2006-10-04 10:40:15 +00:00
Chris Lattner 9259b1efb6 Pattern match min/max nodes when we have sse. This implements
CodeGen/X86/scalar_sse_minmax.ll

llvm-svn: 30719
2006-10-04 06:57:07 +00:00
Chris Lattner 1e21d3a5ae pattern match min/max nodes
llvm-svn: 30718
2006-10-04 06:56:02 +00:00
Chris Lattner 3e11d99a0a add a note :(
llvm-svn: 30717
2006-10-04 05:52:13 +00:00
Chris Lattner 52886e72d7 This case isn't implemented yet. It seems unlikely to be needed, but if it
ever is, we want to get an assert instead of silent bad codegen.

llvm-svn: 30716
2006-10-04 04:58:58 +00:00
Jim Laskey 66b0b55816 Work around for some problems with templates.
llvm-svn: 30715
2006-10-04 01:43:13 +00:00
Evan Cheng 5d9fd977d3 Combine ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD into ISD::LOADX. Add an
extra operand to LOADX to specify the exact value extension type.

llvm-svn: 30714
2006-10-04 00:56:09 +00:00
Chris Lattner fc416faaa0 Use $( $| $) to represent alternatives in asm blocks instead of {|}. This
is needed to support targets where {|} aren't special symbols.

llvm-svn: 30712
2006-10-03 23:27:09 +00:00
Evan Cheng 91d76cb27f Fix an obvious typo.
llvm-svn: 30711
2006-10-03 23:08:27 +00:00
Chris Lattner bd7286e606 Bugfixes
llvm-svn: 30709
2006-10-03 20:19:23 +00:00
Chris Lattner de154b1737 Print the MBB ID # along with the bb tag in the -print-machine-instrs output.
llvm-svn: 30708
2006-10-03 20:17:24 +00:00
Chris Lattner 9744b68d57 ADd a method
llvm-svn: 30707
2006-10-03 20:16:45 +00:00
Chris Lattner 64fd9487bd Provide a function that ensures MBB numbering is dense and inorder. This
can be used by MachineFunctionPasses who need this property.

llvm-svn: 30706
2006-10-03 19:18:57 +00:00
Nick Lewycky 58a910dff5 Simplify logic further.
Ensure that we copy KnownProperties before calling visitBasicBlock, else
we may leak properties into blocks where they don't belong.

llvm-svn: 30705
2006-10-03 17:36:01 +00:00
Rafael Espindola 68d238801c Implement floating point constants
llvm-svn: 30704
2006-10-03 17:27:58 +00:00
Chris Lattner f598d73142 Fix PR933 and CodeGen/X86/2006-10-02-BoolRetCrash.ll
llvm-svn: 30703
2006-10-03 17:18:42 +00:00
Chris Lattner 70a12ec8f8 testcase for PR933
llvm-svn: 30702
2006-10-03 17:17:54 +00:00
Chris Lattner e385fcf098 clean up use of 'explicit'. This is PR934.
Patch contributed by Kevin Sopp!

llvm-svn: 30701
2006-10-03 17:09:12 +00:00
Nick Lewycky 1d00f3e144 Simplify, now that predsimplify depends on break-crit-edges.
Fix SwitchInst where dest-block is the same as one of the cases.

llvm-svn: 30700
2006-10-03 15:19:11 +00:00
Nick Lewycky 755f801adc Move break-crit-edges before the predicate simplifier. Allows us to
optimize in more cases.

llvm-svn: 30699
2006-10-03 14:52:23 +00:00
Evan Cheng ff510a58c2 Revert previous patch. Still breaking things.
llvm-svn: 30698
2006-10-03 07:26:07 +00:00
Bill Wendling 984f0ce06b Fix for PR929. The PHI nodes were being gone through for each instruction
in a successor block for every block...resulting in some O(N^k) algorithm
which wasn't very good for performance. Calculating this information up
front and keeping it in a map made it much faster.

llvm-svn: 30697
2006-10-03 07:20:20 +00:00
Chris Lattner 8aca0ee8c3 Fix PR932 and Analysis/Dominators/2006-10-02-BreakCritEdges.ll:
The critical edge block dominates the dest block if the destblock dominates
all edges other than the one incoming from the critical edge.

llvm-svn: 30696
2006-10-03 07:02:02 +00:00
Chris Lattner 2a7e3c29a1 New testcase for PR932
llvm-svn: 30695
2006-10-03 07:00:13 +00:00
Evan Cheng a36e6cf44f These don't have immediate operands.
llvm-svn: 30694
2006-10-03 06:55:11 +00:00
Chris Lattner 1faa3f913c Move DominatorTree to immediately follow DominatorTreeBase
llvm-svn: 30693
2006-10-03 05:24:56 +00:00
Rafael Espindola d55c0a41df fix the names of the 64bit fp register
initial support for returning 64bit floating point numbers

llvm-svn: 30692
2006-10-02 19:30:56 +00:00
Reid Spencer 62ad409c2b Don't build the runtime library if LLVMGCC is not configured.
llvm-svn: 30691
2006-10-02 19:10:56 +00:00
Chris Lattner fb07457db0 fix misleading warning
llvm-svn: 30690
2006-10-02 17:24:55 +00:00
Chris Lattner 7a7081f3d0 Fix misleading warning message
llvm-svn: 30689
2006-10-02 17:23:42 +00:00
Jim Laskey e73a22514d Debugging kruft
llvm-svn: 30688
2006-10-02 13:01:17 +00:00
Jim Laskey 37c2c6c860 Update documentaion of node annotation (coloring) in viewGraph.
llvm-svn: 30687
2006-10-02 12:28:07 +00:00
Jim Laskey 1368c265da Add ability to annotate (color) nodes in a viewGraph.
llvm-svn: 30686
2006-10-02 12:26:53 +00:00
Chris Lattner 134ff353f9 Fixme is already done
llvm-svn: 30685
2006-10-01 22:46:33 +00:00
Chris Lattner bfdd19bc01 Teach globalsmodref-aa to track scalar pointer global variables which point
to unaliased allocations.  Use this information to disambiguate pointers loaded
from them.  This is a very common case, so it's worthwhile to handle efficiently.

This implements Analysis/GlobalsModRef/indirect-global.ll

llvm-svn: 30684
2006-10-01 22:36:45 +00:00
Chris Lattner bfc049ae3f New testcase
llvm-svn: 30683
2006-10-01 22:35:45 +00:00
Chris Lattner 7d19067c42 Fix a bug from r1.391 of this file, where we checked the size instead of
the alignment when promoting allocations.  This implements
InstCombine/cast.ll:test32

llvm-svn: 30682
2006-10-01 19:40:58 +00:00
Chris Lattner c82477f3a8 new testcase, malloc should be promoted to [2 x double].
llvm-svn: 30681
2006-10-01 19:39:45 +00:00