Commit Graph

44470 Commits

Author SHA1 Message Date
Chris Lattner f54043b3d7 Add a simple, but efficient, generic scoped hash table
llvm-svn: 52112
2008-06-09 00:42:10 +00:00
Chris Lattner c57ba6c14b grammaro
llvm-svn: 52111
2008-06-08 23:40:40 +00:00
Chris Lattner 54d1210f7a final edits from me, simplify the ia64 section.
llvm-svn: 52110
2008-06-08 23:12:47 +00:00
Chris Lattner ed716055f6 more edits
llvm-svn: 52109
2008-06-08 23:06:47 +00:00
Dan Gohman 721b3721be Add notes about two known X86-64 limitations.
llvm-svn: 52108
2008-06-08 23:05:11 +00:00
Chris Lattner b7bc2aa3ed several edits
llvm-svn: 52107
2008-06-08 22:59:35 +00:00
Dan Gohman aa4a946a0c Add some links to doxygen documentation.
llvm-svn: 52106
2008-06-08 22:57:59 +00:00
Dan Gohman 8709a80646 Describe MachineMemOperands.
llvm-svn: 52105
2008-06-08 22:49:27 +00:00
Dan Gohman e70672453a Fix a grammero.
llvm-svn: 52104
2008-06-08 22:44:43 +00:00
Gordon Henriksen f78a57bb09 Revert a bad edit from r52095.
llvm-svn: 52103
2008-06-08 22:05:11 +00:00
Chris Lattner c75fd52044 add vmkit and rewrite clang section
llvm-svn: 52102
2008-06-08 21:58:17 +00:00
Chris Lattner e642fcd689 Since this isn't linked from anywhere yet, I'm taking the opportunity
to move it to a more stable URL.  If the S-A work grows, this will be
the entrypoint for the pages related to it.

llvm-svn: 52101
2008-06-08 21:55:32 +00:00
Chris Lattner 625a3d8301 start edits.
llvm-svn: 52100
2008-06-08 21:34:41 +00:00
Chris Lattner b076b00fdf add more notes.
llvm-svn: 52099
2008-06-08 21:19:07 +00:00
Duncan Sands 11dd424539 Remove comparison methods for MVT. The main cause
of apint codegen failure is the DAG combiner doing
the wrong thing because it was comparing MVT's using
< rather than comparing the number of bits.  Removing
the < method makes this mistake impossible to commit.
Instead, add helper methods for comparing bits and use
them.

llvm-svn: 52098
2008-06-08 20:54:56 +00:00
Chris Lattner b4866ef30c Limit the icmp+phi merging optimization to the cases where it is profitable:
don't make i1 phis when it won't be possible to eliminate them.

llvm-svn: 52097
2008-06-08 20:52:11 +00:00
Chris Lattner 94fd4474f4 add some html escapes
llvm-svn: 52096
2008-06-08 20:25:30 +00:00
Duncan Sands 5644846da3 Using llc always rather than sometimes using LLC.
Try to improve language in various places.  Use
X86 always rather than sometimes using x86.  Add
some minor Ada info.

llvm-svn: 52095
2008-06-08 20:18:35 +00:00
Duncan Sands 0bc1526b6d Fix spelling.
llvm-svn: 52094
2008-06-08 19:38:43 +00:00
Anton Korobeynikov b4b2f0f741 Remove invalid test
llvm-svn: 52093
2008-06-08 16:59:10 +00:00
Nuno Lopes b6f7953818 implement the alias attirbute (in both Sema and Codegen)
llvm-svn: 52092
2008-06-08 15:45:52 +00:00
Anton Korobeynikov 486c7d3fa5 Add win64
llvm-svn: 52091
2008-06-08 10:24:13 +00:00
Anton Korobeynikov f7c5a6e805 This was fixed
llvm-svn: 52090
2008-06-08 10:23:46 +00:00
Nuno Lopes cc041ea68e fix compiler warnings
llvm-svn: 52089
2008-06-08 10:16:34 +00:00
Chris Lattner 7795ea929a add some notes.
llvm-svn: 52087
2008-06-08 02:45:07 +00:00
Bruno Cardoso Lopes 041604ba9f Added FP instruction formats.
llvm-svn: 52086
2008-06-08 01:39:36 +00:00
Bill Wendling b7272db9f6 Temporarily reverting r52056. It's causing PPC to fail to bootstrap.
llvm-svn: 52085
2008-06-08 01:36:24 +00:00
Eli Friedman c98a7add43 Don't crash emitting an initializer for a static local with union type.
This fix just makes sure to construct the global with the appropriate 
type, and fixes up the one user this affects to compensate.

llvm-svn: 52084
2008-06-08 01:23:18 +00:00
Eli Friedman 69d721e071 Enable the rewriter tests on all platforms; there don't appear to
be any regressions from this on my machine, but please let me know if 
you run into issues.  (The idea here is that it's better to run all 
tests on all platforms if at all possible.)

llvm-svn: 52083
2008-06-07 23:20:33 +00:00
Eli Friedman 7e4f41ef3f Don't include objc.h, so the rewriter tests work on machines without it.
llvm-svn: 52082
2008-06-07 23:15:03 +00:00
Chris Lattner a5678ccd4a capture whether a CharacterLiteral was wide or not in the AST.
Patch by Mike Stump!

llvm-svn: 52081
2008-06-07 22:35:38 +00:00
Chris Lattner a0173131fa Fix ast dumping to work with long double literals, e.g. we dump:
long double X() { return 1.0L; }

as:

long double X()
(CompoundStmt 0xb06a00 <t.c:2:17, col:32>
  (ReturnStmt 0xb068d0 <col:19, col:26>
    (FloatingLiteral 0xb02cf0 <col:26> 'long double' 1.000000)))

llvm-svn: 52080
2008-06-07 22:13:43 +00:00
Bruno Cardoso Lopes f09c372191 Added support for FP Registers
llvm-svn: 52079
2008-06-07 21:32:41 +00:00
Chris Lattner 82333ccf39 Mark the right ctor explicit, patch by Cédric Venet
llvm-svn: 52078
2008-06-07 19:56:57 +00:00
Chris Lattner 4595a72c79 Update VC project files, patch by Cédric Venet!
llvm-svn: 52077
2008-06-07 19:33:54 +00:00
Eli Friedman 3ce7b20590 Fix crash with conversion to an address-space-qualified pointer. Bug
reported on cfe-dev by Cédric Venet.

Note that I seriously doubt that this perticular construct is useful, 
though: it's a pointer in an alternate address space pointing into 
unqualified address space.

llvm-svn: 52076
2008-06-07 17:27:51 +00:00
Eli Friedman 7dbab8a6a1 Fix the line endings in the newly added DeclBase.cpp.
llvm-svn: 52075
2008-06-07 16:52:53 +00:00
Eli Friedman 445c73d19f Fix Visual Studio project files; patch by Cédric Venet.
llvm-svn: 52074
2008-06-07 16:34:27 +00:00
Evan Cheng 89200c9177 Speculatively execute a block when the the block is the then part of a triangle shape and it contains a single, side effect free, cheap instruction. The branch is eliminated by adding a select instruction. i.e.
Turn                                                                                                                                                                                                       
BB:                                                                                                                                                                                                        
    %t1 = icmp                                                                                                                                                                                             
    br i1 %t1, label %BB1, label %BB2                                                                                                                                                                      
BB1:                                                                                                                                                                                                       
    %t3 = add %t2, c                                                                                                                                                                                       
    br label BB2                                                                                                                                                                                           
BB2:                                                                                                                                                                                                       
=>                                                                                                                                                                                                         
BB:                                                                                                                                                                                                        
    %t1 = icmp                                                                                                                                                                                             
    %t4 = add %t2, c                                                                                                                                                                                       
    %t3 = select i1 %t1, %t2, %t3

llvm-svn: 52073
2008-06-07 08:52:29 +00:00
Evan Cheng 003b4b0cd2 Fix run line.
llvm-svn: 52072
2008-06-07 08:40:16 +00:00
Evan Cheng 1a0835017a Revert r52046. It broke cbe on x86 / Mac OS X.
llvm-svn: 52071
2008-06-07 07:50:29 +00:00
Sanjiv Gupta 1929242a94 Create debug type descriptors for aggregate/enum types.
llvm-svn: 52070
2008-06-07 04:46:53 +00:00
Dan Gohman f6743d70ab CodeGen support for insertvalue and extractvalue, and for loads and
stores of aggregate values.

llvm-svn: 52069
2008-06-07 02:02:36 +00:00
Owen Anderson 0bd08cf64c Connect successors before creating the DAG node for the branch. This has
no visible functionality change, but enables a future patch where node creation
will update the CFG if it decides to create an unconditional rather than a conditional branch.

llvm-svn: 52067
2008-06-07 00:00:23 +00:00
Ted Kremenek 92611db88f Use a common SourceManager when processing multiple files. This allows us to cache the contents of source files already loaded from disk.
llvm-svn: 52066
2008-06-06 22:42:39 +00:00
Ted Kremenek af44b83296 Updated Xcode project.
llvm-svn: 52065
2008-06-06 21:48:51 +00:00
Gabor Greif cbcc495c1b get rid of ExtractValueInst::init's Value argument, it is already passed to the UnaryInstruction ctor
llvm-svn: 52064
2008-06-06 21:06:32 +00:00
Ted Kremenek ef17049bac Reclaim memory owned by ObjCForwardProtocolDecls.
llvm-svn: 52063
2008-06-06 21:05:33 +00:00
Evan Cheng 0b8f2c53a2 Typo.
llvm-svn: 52062
2008-06-06 21:00:10 +00:00
Gabor Greif 21ba184b27 make ExtractValueInst derived from UnaryInstruction
llvm-svn: 52061
2008-06-06 20:28:12 +00:00