Daniel Dunbar
e4ac7a4059
Remove a FIXME.
...
llvm-svn: 57015
2008-10-03 16:42:10 +00:00
Dan Gohman
eae96ce3ec
Remove an unused field.
...
llvm-svn: 57014
2008-10-03 16:17:33 +00:00
Jim Grosbach
b22ef71d46
On Darwin ARM, memory needs special handling to do JIT. This patch expands
...
this handling to work properly for modifying stub functions, relocations
back to entry points after JIT compilation, etc..
llvm-svn: 57013
2008-10-03 16:17:20 +00:00
Jim Grosbach
332ad5e016
Indexing off by one resulted in errant encoding of source register for
...
reg->reg moves.
llvm-svn: 57011
2008-10-03 15:53:56 +00:00
Jim Grosbach
af929abc01
NeedStub/DoesntNeedStub logic was reversed, leading to not using a stub
...
for global relocations that do need them (libc calls, for example).
llvm-svn: 57010
2008-10-03 15:52:42 +00:00
Nuno Lopes
cbff1d08f2
regenerate
...
llvm-svn: 57009
2008-10-03 15:52:39 +00:00
Nuno Lopes
bc7b224ce4
fix more memleaks in ResolveTypeTo() and ParseGlobalVariable()
...
llvm-svn: 57008
2008-10-03 15:51:46 +00:00
Nuno Lopes
877b7e2128
regenerate with bison 2.3
...
llvm-svn: 57007
2008-10-03 15:45:58 +00:00
Dan Gohman
0d1e9a8e04
Switch the MachineOperand accessors back to the short names like
...
isReg, etc., from isRegister, etc.
llvm-svn: 57006
2008-10-03 15:45:36 +00:00
Nuno Lopes
6d8e67f512
fix memleak in FunctionHeaderH
...
llvm-svn: 57005
2008-10-03 15:44:21 +00:00
Steve Naroff
a2d71df5b9
Rewrite global block expressions.
...
llvm-svn: 57004
2008-10-03 15:38:09 +00:00
Steve Naroff
239f6f9b24
- Add a convenience constructor to Type.
...
- Many rewriter modifications.
llvm-svn: 57003
2008-10-03 15:04:50 +00:00
Steve Naroff
7bf080c9cc
Rework SynthesizeBlockImpl() to include a constructor.
...
llvm-svn: 57001
2008-10-03 12:09:49 +00:00
Mikhail Glushenkov
0ebef2c703
Rename llvmc2/src to llvmc2/core.
...
llvm-svn: 57000
2008-10-03 10:27:23 +00:00
Mikhail Glushenkov
bb63f929d5
Fix build breakage when objdir!=srcdir (proper fix).
...
llvm-svn: 56999
2008-10-03 10:26:37 +00:00
Mikhail Glushenkov
657e1c5c96
Fix build breakage (again) when srcdir != objdir, other small fixes.
...
llvm-svn: 56998
2008-10-03 09:09:34 +00:00
Duncan Sands
6e42742d2d
The result of getSetCCResultType (eg: i32) may be larger
...
than the type an i1 is promoted to (eg: i8). Account
for this. Noticed by Tilmann Scheller on CellSPU; he
will hopefully take care of fixing this in LegalizeDAG
and adding a testcase!
llvm-svn: 56997
2008-10-03 07:41:46 +00:00
Duncan Sands
3a813a5d3f
Teach internalize to preserve the callgraph.
...
Why? Because it was there!
llvm-svn: 56996
2008-10-03 07:36:09 +00:00
Nicolas Geoffray
74056ae3d5
Acquire the lock only when necessary. More precisely, do not acquire
...
the lock when calling a method which may materialize the llvm::Function.
llvm-svn: 56995
2008-10-03 07:27:08 +00:00
Owen Anderson
cb4f156b6b
SplitBlock should only attempt to update LoopInfo if it is actually being used.
...
llvm-svn: 56994
2008-10-03 06:55:35 +00:00
Daniel Dunbar
4d601119c3
Pass postfix attributes to ActOnFields (mismarked a file).
...
llvm-svn: 56993
2008-10-03 02:05:12 +00:00
Daniel Dunbar
15619c7e4b
Pass postfix attributes to ActOnFields.
...
llvm-svn: 56992
2008-10-03 02:03:53 +00:00
Daniel Dunbar
438b0c0c03
Bug fix, ccc was passing -std twice.
...
llvm-svn: 56991
2008-10-03 01:54:54 +00:00
Dan Gohman
4e072a75cc
Implement fast-isel support for zero-extending from i1.
...
It turns out that this is a fairly common operation,
and it's easy enough to handle.
llvm-svn: 56990
2008-10-03 01:28:47 +00:00
Dan Gohman
b01a9c94d4
Fix X86FastISel to handle dynamic allocas that have avoided
...
getting inserted into the ValueMap. This avoids infinite
recursion in some rare cases.
llvm-svn: 56989
2008-10-03 01:27:49 +00:00
Bill Wendling
4893c9a78e
Unbreak the build.
...
llvm-svn: 56988
2008-10-03 00:26:49 +00:00
Steve Naroff
49428dbdd5
Get the right location to insert the synthesized block literals/functions.
...
llvm-svn: 56987
2008-10-03 00:12:09 +00:00
Dan Gohman
d9ef073176
Fix a typo.
...
llvm-svn: 56986
2008-10-03 00:07:11 +00:00
Steve Naroff
2231569f01
Add getTypeSpecStartLoc() to VarDecls and FunctionDecls.
...
This is a temporary solution to help with the block rewriter (though it certainly has general utility).
Once DeclGroup's are implemented, this SourceLocation should be stored with it (since it applies to all the decls).
llvm-svn: 56985
2008-10-03 00:02:03 +00:00
Steve Naroff
ddb1492288
Name changes and some cleanup of preamble.
...
llvm-svn: 56984
2008-10-02 23:30:43 +00:00
Daniel Dunbar
dc2ab1740a
Add Builtins.def attribute for "can be a constant expression".
...
- Enabled for builtins which are always constant expressions
(__builtin_huge_val*, __builtin_inf*, __builtin_constant_p,
__builtin_classify_type, __builtin___CFStringMakeConstantString).
Added Builtin::Context::isConstantExpr.
- Currently overly simply interface which only works for builtins
whose constantexprness does not depend on their arguments.
CallExpr::isBuiltinConstantExpr now takes an ASTContext argument.
llvm-svn: 56983
2008-10-02 23:30:31 +00:00
Jim Grosbach
009db89513
Add support for Canadian Cross builds where the host executables are not
...
runnable on the build machine.
There are a few bits that need built for the build environment (TableGen).
This patch builds those bits, and the associated libraries, for the build
environment as well as the (usual) host environment.
Thanks to Eric C. and Devang P. for pre-commit review.
llvm-svn: 56975
2008-10-02 22:56:44 +00:00
Mikhail Glushenkov
03c8f7b379
Fix build breakage.
...
Forgot to include Makefile.plugins.
llvm-svn: 56970
2008-10-02 22:41:42 +00:00
Dan Gohman
1ab1d31f7a
Optimize conditional branches in X86FastISel. This replaces
...
sequences like this:
sete %al
testb %al, %al
jne LBB11_1
with this:
je LBB11_1
llvm-svn: 56969
2008-10-02 22:15:21 +00:00
Dan Gohman
a78bae34a5
Add a new MachineBasicBlock utility function, isLayoutSuccessor, that
...
can be used when deciding if a block can transfer control to another
via a fall-through instead of a branch.
llvm-svn: 56968
2008-10-02 22:09:09 +00:00
Mikhail Glushenkov
f40296bb49
Build system tweaks to make it more convenient for the plugin authors.
...
Plugins can be now compiled in with a slight Makefile change.
For example, to compile the new Clang driver, use:
cd $LLVMC2_DIR
make TOOLNAME=ccc2 BUILTIN_PLUGINS=Clang
llvm-svn: 56967
2008-10-02 21:15:05 +00:00
Andrew Lenharth
72a9e7367c
fix build gcc 4.3
...
llvm-svn: 56965
2008-10-02 20:15:08 +00:00
Owen Anderson
c5b45fec6b
Use a multimap rather than a map for holding the list of copies to insert, so we don't lose copies when two of them have
...
the same source. I don't know what I was thinking when I wrote this originally.
Note: There's probably a more efficient way to do this, but I need to think about it some more, and about what determinism
guarantees need to be present.
llvm-svn: 56964
2008-10-02 19:40:33 +00:00
Dale Johannesen
867d549fce
Handle some 64-bit atomics on x86-32, some of the time.
...
llvm-svn: 56963
2008-10-02 18:53:47 +00:00
Daniel Dunbar
dd9b2d16f9
Add support for format string checking of object-size checking
...
versions of sprintf and friends.
- Added FIXME that this mechanism should be generalized.
llvm-svn: 56962
2008-10-02 18:44:07 +00:00
Bill Wendling
bed16a1a2b
Avoid name shadowing with E variable defined in for(). This was giving VC++
...
grief.
llvm-svn: 56961
2008-10-02 18:39:11 +00:00
Devang Patel
0db9d67f9a
Remove redundant check.
...
llvm-svn: 56960
2008-10-02 18:38:23 +00:00
Evan Cheng
b25f4637dd
A Partitioned Boolean Quadratic Programming (PBQP) based register allocator.
...
Contributed by Lang Hames.
llvm-svn: 56959
2008-10-02 18:29:27 +00:00
Daniel Dunbar
e23f28f8a5
Emit error unsupported for break/continue/goto inside Obj-C exception
...
handling blocks.
- This has false positives, but at least prevents miscompiles.
llvm-svn: 56958
2008-10-02 18:02:06 +00:00
Oscar Fuentes
e3c43d6279
CMake: Added Host.cpp to lib/System/CMakeLists.txt.
...
llvm-svn: 56957
2008-10-02 17:39:29 +00:00
Daniel Dunbar
92c4c4af58
Fix ccc handling of -mmacosx-version-min.
...
llvm-svn: 56956
2008-10-02 17:26:37 +00:00
Steve Naroff
d40a39626c
Changed Sema::CheckForConstantInitializer to allow global block literals.
...
This commit also includes some name changes in the blocks rewriter (no functionality change).
llvm-svn: 56955
2008-10-02 17:12:56 +00:00
Daniel Dunbar
c3d16493ae
(LLVM up) Rename IRBuilder::IsNonNull -> IsNotNull.
...
llvm-svn: 56954
2008-10-02 17:05:36 +00:00
Daniel Dunbar
e9559808bd
Rename IRBuilder::IsNonNull -> IsNotNull in response to feedback.
...
llvm-svn: 56953
2008-10-02 17:05:03 +00:00
Daniel Dunbar
d55a81e7fc
Unbreak build: claim an extra bit for BuiltinID.
...
llvm-svn: 56952
2008-10-02 16:40:43 +00:00