Devang Patel
031a8a1ef5
Add type DIE into appropriate context DIE.
...
llvm-svn: 63154
2009-01-27 23:22:55 +00:00
Dale Johannesen
718c678fde
Add a DebugLoc field and some simple accessors.
...
llvm-svn: 63152
2009-01-27 23:20:29 +00:00
Dale Johannesen
e50b41d4f5
Reorder args, constify.
...
llvm-svn: 63151
2009-01-27 23:19:41 +00:00
Bill Wendling
6c7c632a21
Add testcase for r63142.
...
llvm-svn: 63149
2009-01-27 23:00:53 +00:00
Anton Korobeynikov
7e63f1aae6
Treat [1 x i8] zeroinitializer as a C string, placing such stuff into
...
mergeable string section. I don't see any bad impact of such decision
(rather then placing it into mergeable const section, as it was before),
but at least Darwin linker won't complain anymore.
The problem in LLVM is that we don't have special type for string constants
(like gcc does). Even more, we have two separate types: ConstatArray for non-null
strings and ConstantAggregateZero for null stuff.... It's a bit weird :)
llvm-svn: 63142
2009-01-27 22:29:24 +00:00
Dan Gohman
953478bd30
Use .empty() instead of comparing .size() with 0.
...
llvm-svn: 63139
2009-01-27 22:12:23 +00:00
Dale Johannesen
3685c30b26
Update to latest spelling.
...
llvm-svn: 63138
2009-01-27 22:09:11 +00:00
Dale Johannesen
eeacf8c68e
Add DebugLoc field and simple accessors.
...
llvm-svn: 63136
2009-01-27 21:41:04 +00:00
Evan Cheng
3330206ff6
Refine DebugLoc per review comments.
...
llvm-svn: 63132
2009-01-27 21:15:07 +00:00
Dan Gohman
0400e83ed8
Add an assertion to the form of SelectionDAG::getConstant that takes
...
a uint64_t to verify that the value is in range for the given type,
to help catch accidental overflow. Fix a few places that relied on
getConstant implicitly truncating the value.
llvm-svn: 63128
2009-01-27 20:39:34 +00:00
Dan Gohman
c017343459
Reformat the allocation-order arrays to a more conventional style.
...
llvm-svn: 63121
2009-01-27 19:25:38 +00:00
Dan Gohman
00f7052bbb
Delete redundant return statements.
...
llvm-svn: 63120
2009-01-27 19:23:22 +00:00
Dan Gohman
f7e8bf0511
Respect the DisableRedZone flag on PowerPC.
...
llvm-svn: 63119
2009-01-27 19:19:28 +00:00
Dan Gohman
7d80f8688e
Simplify findNonImmUse; return the result using the return value
...
instead of via a by-reference argument. No functionality change.
llvm-svn: 63118
2009-01-27 19:04:30 +00:00
Torok Edwin
47c303034d
APInt's countLeadingOnes() was broken for negative i128 values,
...
causing assertion failures in getSExtValue().
Fix it by making highWordBits actually contain what its name says,
and add some more unit-tests for APInt.
This fixes PR3419.
llvm-svn: 63107
2009-01-27 18:06:03 +00:00
Dan Gohman
b2cf79db33
Make some comments doxygen-friendly.
...
llvm-svn: 63104
2009-01-27 17:28:23 +00:00
Owen Anderson
284f6dec01
Make the pre-split-limit option more useful by using a per-function counter.
...
llvm-svn: 63091
2009-01-27 05:01:15 +00:00
Evan Cheng
a05436f739
Implement multiple with overflow by 2 with an add instruction.
...
llvm-svn: 63090
2009-01-27 03:30:42 +00:00
Evan Cheng
80a6c8a024
Forgot this test case.
...
llvm-svn: 63089
2009-01-27 02:59:39 +00:00
Dan Gohman
2e0343e321
Eliminate unnecessary operands-list traversals.
...
llvm-svn: 63088
2009-01-27 02:37:43 +00:00
Dan Gohman
c39a03f3fa
Add a FrontendC testcase for the x86-64 Red Zone feature,
...
to help verify that the feature may be disabled through
the -mno-red-zone option.
llvm-svn: 63079
2009-01-27 00:59:55 +00:00
Dan Gohman
f3c2ac3497
Enable the red zone on x86-64 by default.
...
llvm-svn: 63078
2009-01-27 00:58:47 +00:00
Devang Patel
4353517ac4
Assorted debug info fixes.
...
- DW_AT_bit_size is only suitable for bitfields.
- Encode source location info for derived types.
- Source location and type size info is not useful for subroutine_type (info is included in respective DISubprogram) and array_type.
llvm-svn: 63077
2009-01-27 00:45:04 +00:00
Dan Gohman
2c06ee586b
Add a regression test for x86-64 red zone usage.
...
llvm-svn: 63075
2009-01-27 00:40:27 +00:00
Dan Gohman
4ad174b236
Fix the Red Zone calculation for functions with frame pointers.
...
Don't use the Red Zone when dynamic stack realignment is needed.
This could be implemented, but most x86-64 ABIs don't require
dynamic stack realignment so it isn't urgent.
llvm-svn: 63074
2009-01-27 00:40:06 +00:00
Evan Cheng
876e75cb70
No need to keep size of DebugLocations vector separately.
...
llvm-svn: 63070
2009-01-26 23:47:30 +00:00
Dale Johannesen
af1396e17b
Testcase for 6522054.
...
llvm-svn: 63067
2009-01-26 23:22:19 +00:00
Scott Michel
e00d746487
CellSPU:
...
- Update DWARF debugging support.
llvm-svn: 63059
2009-01-26 22:33:37 +00:00
Scott Michel
56fa9ba0b6
Make the Dwarf macro information section optional; CellSPU's assembler
...
doesn't support it. The default is set to 'true', so this should not
impact any other target backends.
llvm-svn: 63058
2009-01-26 22:32:51 +00:00
Dan Gohman
3a51d8e847
Implement Red Zone utilization on x86-64. This is currently
...
disabled by default; I'll enable it when I hook it up with
the llvm-gcc flag which controls it.
llvm-svn: 63056
2009-01-26 22:22:31 +00:00
Steve Naroff
14a9217ee0
More updates to VC proj...
...
llvm-svn: 63050
2009-01-26 22:03:42 +00:00
Owen Anderson
251512bd29
Reapply r63025 and r63026, with fixes for the failing testcases.
...
llvm-svn: 63049
2009-01-26 21:57:31 +00:00
Duncan Sands
276b736496
Fix PR3393, which amounts to a bug in the expensive
...
checking logic. Rather than make the checking more
complicated, I've tweaked some logic to make things
conform to how the checking thought things ought to
be, since this results in a simpler "mental model".
llvm-svn: 63048
2009-01-26 21:54:18 +00:00
Ted Kremenek
d8045c9154
Add method raw_fd_ostream::seek() for random access within a file.
...
llvm-svn: 63044
2009-01-26 21:42:04 +00:00
Dan Gohman
4613b5e807
At Nick Lewycky's request, rename this test with a more informative name.
...
llvm-svn: 63042
2009-01-26 21:36:31 +00:00
Bill Wendling
3bf060ee33
Also revert r63206
...
llvm-svn: 63041
2009-01-26 21:30:17 +00:00
Bill Wendling
3cf6d13f21
Temporarily revert r63025 until the testsuite failures can be fixed.
...
llvm-svn: 63040
2009-01-26 21:27:03 +00:00
Dan Gohman
2932f7e681
Fix the name of an argument.
...
llvm-svn: 63037
2009-01-26 20:27:11 +00:00
Anton Korobeynikov
39dee7256d
During bittest switch lowering emit shift in the test block, which should (theoretically)
...
allow us to generate more efficient code. We don't do this now though :)
llvm-svn: 63027
2009-01-26 19:26:01 +00:00
Owen Anderson
9bcbf6b882
Get rid of a bunch of dead code now that interval reconstruction is enabled.
...
llvm-svn: 63026
2009-01-26 19:18:06 +00:00
Owen Anderson
834f011a63
Fix an issue where LiveIntervals was trying to be smart about removing kill
...
markers, and ended up foiling the interval reconstruction.
This allows us to turn on reconstruction in the pre alloc splitter, which
fixes a number of miscompilations.
llvm-svn: 63025
2009-01-26 19:12:06 +00:00
Evan Cheng
ec03e0cd3b
Enhance logic in X86DAGToDAGISel::PreprocessForRMW which move load inside callseq_start to allow it to be folded into a call. It was not considering the cases where a token factor is between the load and the callseq_start.
...
llvm-svn: 63022
2009-01-26 18:43:34 +00:00
Evan Cheng
cdf60c96c8
Silence a bogus compiler warning.
...
llvm-svn: 63021
2009-01-26 18:33:51 +00:00
Steve Naroff
8c2e02a690
Update VS project files.
...
llvm-svn: 63017
2009-01-26 18:08:55 +00:00
Roman Levenstein
504ba4c98b
Fix a bug in BitVector.h. All assignment operations (except the usual
...
assignment operator) were returning a copy of the bit vector, instead of a
reference! This old semantics probably did not meet the expectations.
With this patch, chained assignments happen to the right object.
llvm-svn: 63012
2009-01-26 11:07:20 +00:00
Evan Cheng
300df6af4f
Actually source file has already been uniquified into an id during isel. Eliminate the StringMap.
...
llvm-svn: 63009
2009-01-26 07:53:42 +00:00
Evan Cheng
9fda834684
Add data structure to define and track debug location during codegen.
...
llvm-svn: 63008
2009-01-26 07:41:49 +00:00
Evan Cheng
735e3b02aa
Looks like comments were chopped off.
...
llvm-svn: 63007
2009-01-26 07:40:13 +00:00
Evan Cheng
78aa4f34d8
LLVM_SUPPORT_DEBUGINFO_H -> LLVM_ANALYSIS_DEBUGINFO_H since DebugInfo.h is under Analysis.
...
llvm-svn: 63005
2009-01-26 07:31:20 +00:00
Mon P Wang
80efbf07bd
Fixed optimization of combining two shuffles where the first shuffle inputs
...
has a different number of elements than the output.
llvm-svn: 62998
2009-01-26 04:39:00 +00:00