Dan Gohman
f83c81acbe
Use ValueType::bitsLT to simplify some code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63170 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-28 03:10:52 +00:00
Dan Gohman
77f7a5771e
Use ZERO_EXTEND instead of ANY_EXTEND when promoting
...
shift amounts, to avoid implicitly assuming that
target architectures will ignore the high bits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63169 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-28 02:58:31 +00:00
Bill Wendling
42ce8eaa8c
Comment fixes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63164 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-28 01:19:52 +00:00
Evan Cheng
d1e7d9a88b
Suppress a compile time warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63161 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-28 00:53:34 +00:00
Dale Johannesen
ab160cf371
Embalm my ideas of how things should work. Not that
...
anyone will pay attention.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63155 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 23:32:10 +00:00
Devang Patel
7009d24e81
Add type DIE into appropriate context DIE.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63154 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 23:22:55 +00:00
Dale Johannesen
06efc02854
Add a DebugLoc field and some simple accessors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63152 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 23:20:29 +00:00
Dale Johannesen
124c7fdd69
Reorder args, constify.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63151 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 23:19:41 +00:00
Bill Wendling
ac7de20a49
Add testcase for r63142.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 23:00:53 +00:00
Anton Korobeynikov
72bb40229e
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63142 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 22:29:24 +00:00
Dan Gohman
5f7c41c9d0
Use .empty() instead of comparing .size() with 0.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63139 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 22:12:23 +00:00
Dale Johannesen
1bb1d99f23
Update to latest spelling.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63138 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 22:09:11 +00:00
Dale Johannesen
3b1a9c5bce
Add DebugLoc field and simple accessors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63136 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 21:41:04 +00:00
Evan Cheng
aaeea9e64f
Refine DebugLoc per review comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63132 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 21:15:07 +00:00
Dan Gohman
ce9bc12c6f
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63128 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 20:39:34 +00:00
Dan Gohman
d3f184906d
Reformat the allocation-order arrays to a more conventional style.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63121 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 19:25:38 +00:00
Dan Gohman
daac99cdfb
Delete redundant return statements.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63120 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 19:23:22 +00:00
Dan Gohman
9e79091f1a
Respect the DisableRedZone flag on PowerPC.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63119 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 19:19:28 +00:00
Dan Gohman
c03e9a1040
Simplify findNonImmUse; return the result using the return value
...
instead of via a by-reference argument. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63118 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 19:04:30 +00:00
Torok Edwin
2d0f1c57c3
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63107 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 18:06:03 +00:00
Dan Gohman
101a90f3d3
Make some comments doxygen-friendly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63104 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 17:28:23 +00:00
Owen Anderson
26562de2ef
Make the pre-split-limit option more useful by using a per-function counter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 05:01:15 +00:00
Evan Cheng
6a86bd71df
Implement multiple with overflow by 2 with an add instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 03:30:42 +00:00
Evan Cheng
ccc497f152
Forgot this test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63089 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 02:59:39 +00:00
Dan Gohman
e8ecf4876a
Eliminate unnecessary operands-list traversals.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 02:37:43 +00:00
Dan Gohman
49237f04a8
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63079 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:59:55 +00:00
Dan Gohman
499cb3fcfb
Enable the red zone on x86-64 by default.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63078 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:58:47 +00:00
Devang Patel
ad165bec1d
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63077 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:45:04 +00:00
Dan Gohman
4e1fae5125
Add a regression test for x86-64 red zone usage.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:40:27 +00:00
Dan Gohman
336b636dd7
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63074 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:40:06 +00:00
Dan Gohman
d9660b5f9e
Add an svn:ignore property.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-27 00:37:09 +00:00
Evan Cheng
b9f66cfadf
No need to keep size of DebugLocations vector separately.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63070 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 23:47:30 +00:00
Dale Johannesen
8bca3b7664
Testcase for 6522054.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63067 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 23:22:19 +00:00
Scott Michel
9de57a9ed2
CellSPU:
...
- Update DWARF debugging support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63059 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 22:33:37 +00:00
Scott Michel
210de72cd7
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 22:32:51 +00:00
Dan Gohman
92f4f16a19
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63056 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 22:22:31 +00:00
Steve Naroff
609eef258f
More updates to VC proj...
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63050 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 22:03:42 +00:00
Owen Anderson
b4b8436381
Reapply r63025 and r63026, with fixes for the failing testcases.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63049 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:57:31 +00:00
Duncan Sands
5bb11b89dd
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".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63048 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:54:18 +00:00
Ted Kremenek
9c27886dd5
Add method raw_fd_ostream::seek() for random access within a file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63044 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:42:04 +00:00
Dan Gohman
4699934647
At Nick Lewycky's request, rename this test with a more informative name.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63042 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:36:31 +00:00
Bill Wendling
826f093517
Also revert r63206
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63041 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:30:17 +00:00
Bill Wendling
34b946b8fb
Temporarily revert r63025 until the testsuite failures can be fixed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63040 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 21:27:03 +00:00
Dan Gohman
94cb2bf4e7
Fix the name of an argument.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63037 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 20:27:11 +00:00
Anton Korobeynikov
36c826ad95
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63027 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 19:26:01 +00:00
Owen Anderson
d7250517b0
Get rid of a bunch of dead code now that interval reconstruction is enabled.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63026 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 19:18:06 +00:00
Owen Anderson
8af1e761f8
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63025 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 19:12:06 +00:00
Evan Cheng
5b2e5893c6
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63022 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 18:43:34 +00:00
Evan Cheng
b964f33873
Silence a bogus compiler warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63021 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 18:33:51 +00:00
Steve Naroff
544526885b
Update VS project files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63017 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26 18:08:55 +00:00