Dale Johannesen
40f83ac649
When resolving a stub in x86-64 JIT, use a PC-relative branch
...
rather than the absolute address if the target is within range.
llvm-svn: 54708
2008-08-12 23:20:24 +00:00
Bill Wendling
f21a38700f
Remove tabs.
...
llvm-svn: 54707
2008-08-12 23:15:44 +00:00
Bill Wendling
ed74a194a7
Update. Remove bogus webpage.
...
llvm-svn: 54705
2008-08-12 21:55:54 +00:00
Ted Kremenek
27fb019038
Added GenericDataMap as a component of ValueState.
...
llvm-svn: 54704
2008-08-12 21:49:24 +00:00
Ted Kremenek
4c088683c0
Update VS project files.
...
llvm-svn: 54701
2008-08-12 21:05:43 +00:00
Dale Johannesen
30e5dbb407
Make x86-64 JIT changes Darwin-specific.
...
llvm-svn: 54700
2008-08-12 21:02:08 +00:00
Ted Kremenek
9551ab6c8c
More cleanups. Add missing #include.
...
llvm-svn: 54699
2008-08-12 20:41:56 +00:00
Duncan Sands
1c5f7fe389
Add a NullFolder class that doesn't fold constants.
...
This may be used as the second IRBuilder template
parameter, the idea being that people learning LLVM
may find it helpful (several people asked on IRC
if it was possible to turn off constant folding
because it made it hard for them to see what was
going on). Compiles, but otherwise completely
untested.
llvm-svn: 54698
2008-08-12 20:39:27 +00:00
Dan Gohman
2a62fd96a6
Extend ScalarEvolution's executesAtLeastOnce logic to be able to
...
continue past the first conditional branch when looking for a
relevant test. This helps it avoid using MAX expressions in
loop trip counts in more cases.
llvm-svn: 54697
2008-08-12 20:17:31 +00:00
Ted Kremenek
3f13f598ce
More summary generation refactoring.
...
llvm-svn: 54696
2008-08-12 18:48:50 +00:00
Jim Grosbach
643e60e19c
Whitespace cleanup. Test commit.
...
llvm-svn: 54695
2008-08-12 18:34:45 +00:00
Ted Kremenek
050b91cd28
Add variadic addInstMethSummary() and refactored addPanicSummary() to use this method. (code reduction).
...
Misc. cleanups.
llvm-svn: 54694
2008-08-12 18:30:56 +00:00
Ted Kremenek
b49bb5a050
Update Xcode project.
...
llvm-svn: 54693
2008-08-12 18:29:20 +00:00
Dale Johannesen
d4a5e8f74a
In the absence of a linker to build the GOT, use the 32-bit
...
non_lazy_ptr mechanism on x86-64 Darwin JIT. Fixes a bunch
of last night's failures.
llvm-svn: 54692
2008-08-12 18:23:48 +00:00
Dan Gohman
23785a1679
Correct the filename in the top-of-file comment.
...
llvm-svn: 54688
2008-08-12 17:42:33 +00:00
Dan Gohman
be5e69ed37
Avoid repeatedly reallocating the FoldingSetNodeID when searching
...
through multiple nodes in a bucket.
llvm-svn: 54687
2008-08-12 17:40:22 +00:00
Devang Patel
0d29ae085b
Use SmallVector instead of std::vector
...
llvm-svn: 54685
2008-08-12 15:44:31 +00:00
Duncan Sands
a21e4d6fe6
Point people to ConstantExpr and ConstantFolding,
...
in case they get the wrong idea. Fit in 80 columns.
llvm-svn: 54676
2008-08-12 09:43:15 +00:00
Daniel Dunbar
7bd00bda05
Emit OBJC_MODULE_INFO and OBJC_SYMBOLS metadata
...
- Matches llvm-gcc and seem to be expected by otool.
llvm-svn: 54669
2008-08-12 06:48:42 +00:00
Daniel Dunbar
d627c85f43
Drop Sender from GenerateMessageSend*
...
- Was unused and generated a unnecessary load of self
(missed file)
llvm-svn: 54668
2008-08-12 05:40:10 +00:00
Daniel Dunbar
5d71559c01
Drop Sender from GenerateMessageSend*
...
- Was unused and generated a unnecessary load of self
Update NeXT runtime to get proper object & selector types from
ASTContext.
llvm-svn: 54667
2008-08-12 05:28:47 +00:00
Daniel Dunbar
6630e10ccc
Protocol related tweaks
...
- Implement type conversion of ObjCQualifiedIdType
- Wire @protocol(...) to GenerateProtocolRef in ScalarExprEmitter
llvm-svn: 54666
2008-08-12 05:08:18 +00:00
Daniel Dunbar
bceb904f91
Add @selector(...) codegen support.
...
llvm-svn: 54665
2008-08-12 03:55:34 +00:00
Daniel Dunbar
cb515c8b0a
Add NeXT support for (simple) message sends.
...
llvm-svn: 54664
2008-08-12 03:39:23 +00:00
Mike Stump
b9d50b23a8
Unbreak clang install.
...
llvm-svn: 54663
2008-08-12 00:32:59 +00:00
Devang Patel
c68a0b6244
Use DenseMap to keep track of last users.
...
Use inversed map for faster queries.
llvm-svn: 54662
2008-08-12 00:26:16 +00:00
Daniel Dunbar
2258aa0f27
Move some ObjC preprocessor definitions into
...
InitializePredefinedMacros().
- Also now properly wired to -fobjc-gc, -fnext-runtime.
llvm-svn: 54661
2008-08-12 00:21:46 +00:00
Daniel Dunbar
8b8683f9f6
Add ObjC constant string support for NeXT.
...
Changed CGObjCRuntime::GenerateConstantString interface to take
std::string instead of char* and size.
Change ObjC functions which call on GenerateConstantString to bitcast
result to appropriate type.
llvm-svn: 54659
2008-08-12 00:12:39 +00:00
Dale Johannesen
dafdbf77b3
Some fixes for x86-64 JIT. Make it use small code
...
model, except for external calls; this makes
addressing modes PC-relative. Incomplete.
The assertion at the top of Emitter::runOnMachineFunction
was obviously bogus (always true) so I removed it.
If someone knows what the correct test should be to cover
all the various targets, please fix.
llvm-svn: 54656
2008-08-11 23:46:25 +00:00
Chris Lattner
b56e07e736
add a helper method to sys::Path for clang, patch by
...
Kovarththanan Rajaratnam!
llvm-svn: 54655
2008-08-11 23:39:47 +00:00
Mike Stump
52f0260582
Fix compilation warning with help from David Chisnall.
...
llvm-svn: 54654
2008-08-11 23:16:18 +00:00
Chris Lattner
2aa0ff27aa
Implement support for simplifying vector comparisons by 0.0 and 1.0 like we
...
do for scalars. Patch contributed by Nicolas Capens
This also generalizes the previous xforms to work on long double, now that
isExactlyValue works for long double.
llvm-svn: 54653
2008-08-11 22:06:05 +00:00
Chris Lattner
7b18e35113
remove obsolete comment.
...
llvm-svn: 54652
2008-08-11 22:03:07 +00:00
Daniel Dunbar
3ad53483fb
Add LangOptions::NeXTRuntime.
...
- Wired to -fnext-runtime and -fgnu-runtime options.
- Defaults to GNU, no autoselection for NeXT.
Emit NeXT OBJC_IMAGE_INFO marker.
llvm-svn: 54651
2008-08-11 21:35:06 +00:00
Devang Patel
ec9e1a60ad
Keep track of analysis usage information for passes. Avoid invoking
...
getAnalysisUsage() repeatedly.
llvm-svn: 54650
2008-08-11 21:13:39 +00:00
Dan Gohman
c82ad79c64
Improve the grep commands for this test to be tolerant of ABI
...
differences, and to be more specific.
llvm-svn: 54648
2008-08-11 20:10:41 +00:00
Daniel Dunbar
2de4b5e2fc
Add test case for -fexceptions
...
llvm-svn: 54647
2008-08-11 18:40:47 +00:00
Dan Gohman
127bb03b8c
Take the FrameOffset into account when computing the alignment
...
of stack objects. This fixes PR2656.
llvm-svn: 54646
2008-08-11 18:27:03 +00:00
Daniel Dunbar
8d480594cf
Change CodeGenModule to only create ObjC runtime for ObjC files
...
- Changed CodeGenModule::getObjCRuntime to return reference.
- Added CodeGenModule::hasObjCRuntime predicate.
llvm-svn: 54645
2008-08-11 18:12:00 +00:00
Nate Begeman
f69d13b60a
Implement ISD::TRAP support on PPC
...
llvm-svn: 54644
2008-08-11 17:36:31 +00:00
Daniel Dunbar
fb3043d627
Add -fexceptions to Driver
...
- Maps to LangOptions.Exceptions
- Currently always off, should autoselect based on language.
Update CodeGen to set unwind attribute on functions definitions based
on LangOptions.Exceptions.
- Still need to set attributes appropriately on calls.
llvm-svn: 54643
2008-08-11 17:36:14 +00:00
Daniel Dunbar
48595de697
Update for IRBuilder template change (update LLVM!)
...
llvm-svn: 54642
2008-08-11 16:50:21 +00:00
Duncan Sands
1d156f2560
Make it possible to use different constant
...
folding policies with IRBuilder. The default,
provided by ConstantFolder, is to do minimal
folding like now: what ConstantExpr provides.
An alternative is to use TargetFolder, which
uses target information to fold constants more.
llvm-svn: 54640
2008-08-11 15:29:30 +00:00
Daniel Dunbar
56fdb6ae69
More #include cleaning
...
- Kill unnecessary #includes in .cpp files. This is an automatic
sweep so some things removed are actually used, but happen to be
included by a previous header. I tried to get rid of the obvious
examples and this was the easiest way to trim the #includes in one
fell swoop.
- We now return to regularly scheduled development.
llvm-svn: 54632
2008-08-11 06:23:49 +00:00
Chris Lattner
7b7b67872f
the stacker doc is way out of date.
...
llvm-svn: 54631
2008-08-11 06:13:31 +00:00
Chris Lattner
4d3a5f0817
remove obsolete files
...
llvm-svn: 54630
2008-08-11 06:12:45 +00:00
Daniel Dunbar
6e8aa537f8
More #include cleaning
...
- Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h
- Moved Sema::getCurMethodDecl() out of line (dependent on
ObjCMethodDecl via dyn_cast).
llvm-svn: 54629
2008-08-11 05:35:13 +00:00
Daniel Dunbar
ad319a73f2
More #include cleaning
...
- Remove internal uses of AST.h
llvm-svn: 54628
2008-08-11 05:00:27 +00:00
Daniel Dunbar
221fa94e40
More #include cleaning
...
- Drop Expr.h,RecordLayout.h from ASTContext.h (for DeclBase.h and
SourceLocation.h)
- Move ASTContext constructor into implementation
llvm-svn: 54627
2008-08-11 04:54:23 +00:00
Daniel Dunbar
c74b5cc2bc
More #include cleaning
...
- Drop Diagnostic.h from DeclSpec.h, move utility Diag methods into
implementation .cpp
llvm-svn: 54626
2008-08-11 03:45:03 +00:00