Oscar Fuentes
bb3243a706
Removed VC++ compatibility code from DataTypes.h.in.
...
This header file is not used on VC++ builds.
llvm-svn: 90829
2009-12-08 02:49:54 +00:00
Oscar Fuentes
7c94e1aa2a
For VC++, define the ?INT*_C macros only it they are not yet defined.
...
Some compatibility updates like the Boost TR1 compatibility headers
define them.
Patch contributed by OvermindDL1!
llvm-svn: 90828
2009-12-08 02:40:09 +00:00
Victor Hernandez
f5143485fa
Rename DIFactory::InsertValue() as DIFactory::InsertDbgValueIntrinsic()
...
llvm-svn: 90807
2009-12-07 21:54:43 +00:00
Devang Patel
e59f4f7204
Add support to emit debug info for c++ style namespaces.
...
llvm-svn: 90805
2009-12-07 21:41:32 +00:00
Chris Lattner
9ed7e3ffb9
add accessor, improve comment.
...
llvm-svn: 90792
2009-12-07 19:45:30 +00:00
Dan Gohman
b52be9ecc4
Apply Pekka Jääskeläinen's patch to raise the first virtual register
...
number in order to accomodate targets with more than 1024 registers.
llvm-svn: 90789
2009-12-07 19:38:26 +00:00
Victor Hernandez
2a16652946
Introduce the "@llvm.dbg.value" debug intrinsic.
...
The semantics of llvm.dbg.value are that starting from where it is executed, an offset into the specified user source variable is specified to get a new value.
An example:
call void @llvm.dbg.value(metadata !{ i32 7 }, i64 0, metadata !2 )
Here the user source variable associated with metadata #2 gets the value "i32 7" at offset 0.
llvm-svn: 90788
2009-12-07 19:36:34 +00:00
Chris Lattner
0a810a827f
checkpoint of the new PHITransAddr code, still not done and not used by
...
anything.
llvm-svn: 90779
2009-12-07 18:36:53 +00:00
Mikhail Glushenkov
c05e105f51
Deprecate 'unpack_values'.
...
Use 'forward_values' + 'comma_separated' instead.
llvm-svn: 90774
2009-12-07 18:25:54 +00:00
Mikhail Glushenkov
9f567e2e67
Implement 'forward_value' and 'forward_transformed_value'.
...
llvm-svn: 90770
2009-12-07 17:03:05 +00:00
Evan Cheng
79d3b53208
Pre-regalloc tale duplication. Work in progress.
...
llvm-svn: 90759
2009-12-07 10:15:19 +00:00
John Mosby
a8f0994ba7
fixed some typos in method comments, reworded some comments for clarity
...
llvm-svn: 90754
2009-12-07 09:06:37 +00:00
Oscar Fuentes
d4427a6b63
Fixes the Atomic implementation if compiled by MSVC compiler.
...
sys::cas_flag should be long on this platform, InterlockedAdd() is
defined only for the Itanium architecture (according to MSDN).
Patch by Michael Beck!
llvm-svn: 90748
2009-12-07 05:29:59 +00:00
Anton Korobeynikov
fadc276b81
Add MSP430 interrupt calling conv. No functionality change yet.
...
llvm-svn: 90738
2009-12-07 02:27:35 +00:00
Chris Lattner
c9a91632e1
remove extraneous comma clang warns about
...
llvm-svn: 90707
2009-12-06 16:58:41 +00:00
Chris Lattner
aee232cb03
Add helper methods for forming shift operations with a constant
...
shift amount.
llvm-svn: 90694
2009-12-06 01:56:22 +00:00
Dan Gohman
e6ce676cb2
Remove old DBG_LABEL code.
...
llvm-svn: 90669
2009-12-05 17:56:26 +00:00
Dan Gohman
d2797bf9ae
Remove the unused DisableLegalizeTypes option and related code.
...
llvm-svn: 90668
2009-12-05 17:51:33 +00:00
Bill Wendling
887646a585
Temporarily revert r90502. It was causing the llvm-gcc bootstrap on PPC to fail.
...
llvm-svn: 90653
2009-12-05 07:30:23 +00:00
Nick Lewycky
6f5e732b75
Document that memory use intrinsics may also return Def results.
...
llvm-svn: 90651
2009-12-05 06:37:52 +00:00
Dan Gohman
c9454cd34f
Make TargetSelectInstruction protected and called from FastISel.cpp
...
instead of SelectionDAGISel.cpp.
llvm-svn: 90636
2009-12-05 01:27:58 +00:00
Dan Gohman
f9654e9258
Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of
...
MachineBasicBlock::canFallThrough(), which is target-independent and more
thorough.
llvm-svn: 90634
2009-12-05 00:44:40 +00:00
David Greene
4ab7e5fa6a
Remove an unneeded include.
...
llvm-svn: 90627
2009-12-05 00:03:24 +00:00
David Greene
7ff6aa2e62
Fix a bad merge.
...
llvm-svn: 90616
2009-12-04 23:08:02 +00:00
David Greene
4c625161b2
Update the TargetInstrInfo interfaces so hasLoad/StoreFrom/ToStackSlot
...
can return a MachineMemOperand.
llvm-svn: 90615
2009-12-04 23:00:50 +00:00
Bob Wilson
b8002101b4
Fix indentation.
...
llvm-svn: 90613
2009-12-04 22:46:47 +00:00
Evan Cheng
0b005cade5
Add a pre-regalloc tail duplication pass.
...
llvm-svn: 90567
2009-12-04 09:42:45 +00:00
Chris Lattner
167f1dc040
add the start of a class used to handle phi translation in memdep and
...
gvn (this is just a skeleton so far). This will ultimately be used
to fix a nasty miscompilation with GVN.
llvm-svn: 90518
2009-12-04 02:10:16 +00:00
Mike Stump
cbbfda910a
Create yet another helper for Invoke.
...
llvm-svn: 90514
2009-12-04 01:53:15 +00:00
Mike Stump
9bc36df3e7
Add some helpers for Invoke to mirror CreateCall helpers.
...
llvm-svn: 90508
2009-12-04 01:26:26 +00:00
Jakob Stoklund Olesen
7c5af26d12
Also attempt trivial coalescing for live intervals that end in a copy.
...
The coalescer is supposed to clean these up, but when setting up parameters
for a function call, there may be copies to physregs. If the defining
instruction has been LICM'ed far away, the coalescer won't touch it.
The register allocation hint does not always work - when the register
allocator is backtracking, it clears the hints.
This patch takes care of a few more cases that r90163 missed.
llvm-svn: 90502
2009-12-04 00:16:04 +00:00
Devang Patel
fe7cf074f0
Add support to emit debug info for virtual functions and virtual base classes.
...
llvm-svn: 90474
2009-12-03 19:11:07 +00:00
Daniel Dunbar
63e2201f3e
Add an implementation of the delta debugging algorithm.
...
- This is a pretty slow / memory intensive implementation, and I will likely
change it to an iterative model, but it works.
llvm-svn: 90447
2009-12-03 11:12:42 +00:00
Andreas Neustifter
39cc7661ad
Use ProfileInfo-API in ProfileInfo Loader and do more assertions.
...
llvm-svn: 90446
2009-12-03 11:00:37 +00:00
Andreas Neustifter
83d47e4f5f
Converted ProfileInfo to template, added more API for ProfileInfo-preserving.
...
llvm-svn: 90445
2009-12-03 09:30:12 +00:00
Evan Cheng
1c3edb4fa8
Fill out codegen SSA updater. It's not yet tested.
...
llvm-svn: 90395
2009-12-03 02:31:43 +00:00
Chris Lattner
09df97d257
remove some dead std::ostream using code.
...
llvm-svn: 90366
2009-12-03 00:55:04 +00:00
Chris Lattner
9ce833945e
improve portability to avoid conflicting with std::next in c++'0x.
...
Patch by Howard Hinnant!
llvm-svn: 90365
2009-12-03 00:50:42 +00:00
Bill Wendling
db54e8c67c
This initial code is meant to convert TargetData to use an AbstractTypesUser so
...
that it doesn't have dangling pointers when abstract types are resolved. This
modifies it somewhat to address comments: making the "StructLayoutMap" an
anonymous structure, calling "removeAbstractTypeUser" when appropriate, and
adding asserts where helpful.
llvm-svn: 90362
2009-12-03 00:17:12 +00:00
Evan Cheng
e573096db2
Skeleton for MachineInstr level SSA updater.
...
llvm-svn: 90353
2009-12-02 22:02:52 +00:00
Jim Grosbach
0e1230b23b
Factor the stack alignment calculations out into a target independent pass.
...
No functionality change.
llvm-svn: 90336
2009-12-02 19:30:24 +00:00
Devang Patel
122acaf238
Add utility routine to create subprogram definition entry from subprogram declaration entry.
...
llvm-svn: 90282
2009-12-01 23:09:02 +00:00
Dan Gohman
3f4d608e3c
Add edge source labels to SelectionDAG graphs, now that the graph printing
...
framework omits differentiated edge sources in the case where the labels
are empty strings.
llvm-svn: 90254
2009-12-01 19:20:00 +00:00
Jakob Stoklund Olesen
2b50f038b1
Move PHIElimination::isLiveOut method to LiveVariables.
...
We want LiveVariables clients to use methods rather than accessing the
getVarInfo data structure directly. That way it will be possible to change the
LiveVariables representation.
llvm-svn: 90240
2009-12-01 17:13:31 +00:00
Gabor Greif
234d7dbe09
typo
...
llvm-svn: 90236
2009-12-01 15:53:33 +00:00
Gabor Greif
e65e0b8591
demonstrate usage of Cases() mapping several strings to the same value; remove trailing spaces
...
llvm-svn: 90230
2009-12-01 12:53:56 +00:00
Eric Christopher
8a948265a1
Remove the gcc builtins from the intrinsics, we'll lower them
...
explicitly so we can check arguments.
llvm-svn: 90199
2009-12-01 03:18:26 +00:00
Evan Cheng
fcbc30f36e
Fix PR5614: parts of a physical register def may be killed the rest.
...
llvm-svn: 90180
2009-12-01 00:44:45 +00:00
Dan Gohman
54f4f93c81
Fix typos in comments.
...
llvm-svn: 90164
2009-11-30 23:30:43 +00:00
Bob Wilson
b293fe32cb
Remove isProfitableToDuplicateIndirectBranch target hook. It is profitable
...
for all the processors where I have tried it, and even when it might not help
performance, the cost is quite low. The opportunities for duplicating
indirect branches are limited by other factors so code size does not change
much due to tail duplicating indirect branches aggressively.
llvm-svn: 90144
2009-11-30 18:35:03 +00:00