Daniel Dunbar [Wed, 24 Mar 2010 03:43:40 +0000 (03:43 +0000)]
MC: Direct all {fragment,section,symbol} address access through the MCAsmLayout object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99380
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Mar 2010 01:50:28 +0000 (01:50 +0000)]
dbg_value may end a block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99378
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Wed, 24 Mar 2010 01:29:25 +0000 (01:29 +0000)]
Mark VMOVDneon and VMOVQ as having the N2RegFrm form to help the disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99376
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 01:02:12 +0000 (01:02 +0000)]
Switch INC8r to defining its pattern in terms of X86inc_flag
and defining the add pattern with Pat<>, eliminating a use of
parallel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99375
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Wed, 24 Mar 2010 00:57:50 +0000 (00:57 +0000)]
Renamed NVdVmImmFrm and NVdVmVCVTFrm to the more proper N2RegFrm and NVCVTFrm,
respectively, and add some more comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99373
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Mar 2010 00:53:38 +0000 (00:53 +0000)]
Remove the ConvertActions table and associated code, which is unused.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99372
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:53:27 +0000 (00:53 +0000)]
Add a method to get a StringMapEntry from a pointer to the string
data it contains (similar to GetStringMapEntryFromValue).
Patch by Greg Clayton!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99371
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:49:29 +0000 (00:49 +0000)]
switch SDTBinaryArithWithFlags to be a multiple-result node as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99370
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:47:47 +0000 (00:47 +0000)]
Switch SDTUnaryArithWithFlags to being modeled as a two-result
ISD node. The only change in the generated isel code are comments
like:
< // Src: (X86dec_flag:i16 GR16:i16:$src)
---
> // Src: (X86dec_flag:i16:i32 GR16:i16:$src)
because now it knows that X86dec_flag returns both an i16 (for the result)
and an i32 (for EFLAGS) in this case. Wewt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99369
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:41:19 +0000 (00:41 +0000)]
add plumbing for handling multiple result nodes
in some more places.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99366
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Mar 2010 00:27:49 +0000 (00:27 +0000)]
Fix coding style.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99362
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 24 Mar 2010 00:22:24 +0000 (00:22 +0000)]
Generalize findNearestCommonDominator to work on post-dominators,
based on a suggestion by Jochen Wilhelmy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99361
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:16:52 +0000 (00:16 +0000)]
remove 64-bit or_is_add parallels.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99360
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:15:23 +0000 (00:15 +0000)]
remove useless or_is_add parallel's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99359
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:12:57 +0000 (00:12 +0000)]
reduce nesting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99358
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:06:46 +0000 (00:06 +0000)]
implement SDTCisVTSmallerThanOp with EnforceSmallerThan
instead of reimplementing it wrong and poorly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99357
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 24 Mar 2010 00:03:13 +0000 (00:03 +0000)]
try being more permissive for if-conversion on ARM V7. see what the nightly
test run permformance numbers say as to whether it helps.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99355
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Mar 2010 00:01:16 +0000 (00:01 +0000)]
bring sanity to EnforceVectorEltType
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99354
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 23:50:31 +0000 (23:50 +0000)]
Cleanup getImplicitType
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99353
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 23 Mar 2010 23:48:51 +0000 (23:48 +0000)]
Revert "Add a late SSEDomainFix pass that twiddles SSE instructions to avoid domain crossings."
This reverts commit 99345. It was breaking buildbots.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99352
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 23:47:14 +0000 (23:47 +0000)]
MC: Sprinkle in some more interesting statistics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99350
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 23:47:12 +0000 (23:47 +0000)]
llvm-mc: Support -filetype=null, for timing purposes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99349
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 23:47:07 +0000 (23:47 +0000)]
llvm-mc: Fast path EvaluateAbsolute of constants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99348
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 23:46:27 +0000 (23:46 +0000)]
reject void in intrinsic type lists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99347
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 23:46:07 +0000 (23:46 +0000)]
[llvm_void_ty] is no longer needed for result types,
just use an empty result list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99346
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 23 Mar 2010 23:14:44 +0000 (23:14 +0000)]
Add a late SSEDomainFix pass that twiddles SSE instructions to avoid domain crossings.
This is work in progress. So far, SSE execution domain tables are added to
X86InstrInfo, and a skeleton pass is enabled with -sse-domain-fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99345
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 23:09:14 +0000 (23:09 +0000)]
Renamed NVdImmFrm to N1RegModImmFrm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99344
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 23 Mar 2010 23:09:03 +0000 (23:09 +0000)]
Remove if DISABLED not if not DISABLED...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99343
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 22:59:07 +0000 (22:59 +0000)]
add some accessors to callsite/callinst/invokeinst to check
for the noinline attribute, and make the inliner refuse to
inline a call site when the call site is marked noinline even
if the callee isn't. This fixes PR6682.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99341
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Mar 2010 22:44:42 +0000 (22:44 +0000)]
Revert 99335. getTypeToExpandTo's iterative behavior is actually
needed here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99339
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 23 Mar 2010 22:15:33 +0000 (22:15 +0000)]
Use "DISABLE_EDIS" to disable building "edis" explicitly. Don't build it for
Apple-style builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99336
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Mar 2010 22:15:31 +0000 (22:15 +0000)]
Remove getTypeToExpandTo, since it isn't adding much value
beyond just calling getTypeToTransformTo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99335
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 21:59:43 +0000 (21:59 +0000)]
make sure to delete the llvm module before calling llvm_shutdown,
this fixes crashes in error cases, PR6683
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99334
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 23 Mar 2010 21:53:22 +0000 (21:53 +0000)]
Don't back past debug info intrinsics; SCEVExpander's strategy
for ignoring debug info intrinsics everywhere else is to advance
past them, and it needs to be consistent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99332
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Mar 2010 21:48:41 +0000 (21:48 +0000)]
fix an infinite loop in Module::getEndianness, PR6684
patch by Alex Mac!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99330
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 21:35:03 +0000 (21:35 +0000)]
Fix typo in the comment for N3VX class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99328
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 21:30:12 +0000 (21:30 +0000)]
Add comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99327
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 21:25:38 +0000 (21:25 +0000)]
Add New NEON Format NVdVmVCVTFrm.
Converted some of the NEON vcvt instructions to this format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99326
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 23 Mar 2010 21:15:59 +0000 (21:15 +0000)]
Skip debugging intrinsics when sinking unused invariants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99324
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 20:40:44 +0000 (20:40 +0000)]
Add New NEON Format NVdVmImmFrm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99322
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 20:36:12 +0000 (20:36 +0000)]
Ignore dbg_value's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99321
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 20:35:45 +0000 (20:35 +0000)]
Teach isSafeToClobberEFLAGS to ignore dbg_value's. We need a MachineBasicBlock::iterator that does this automatically?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99320
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 20:33:48 +0000 (20:33 +0000)]
Code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99319
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 23 Mar 2010 18:54:46 +0000 (18:54 +0000)]
Fix VLDMQ and VSTMQ instructions to use the correct encoding and address modes.
These instructions are only needed for codegen, so I've removed all the
explicit encoding bits for now; they should be set in the same way as the for
VLDMD and VSTMD whenever we add encodings for VFP. The use of addrmode5
requires that the instructions be custom-selected so that the number of
registers can be set in the AM5Opc value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99309
91177308-0d34-0410-b5e6-
96231b3b80d8
Stuart Hastings [Tue, 23 Mar 2010 18:39:23 +0000 (18:39 +0000)]
Test case for llvm-gcc r99305. Radar
7659636.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99306
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 23 Mar 2010 17:23:59 +0000 (17:23 +0000)]
Fix bad indentation, 80-column violations, and trailing whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99295
91177308-0d34-0410-b5e6-
96231b3b80d8
Johnny Chen [Tue, 23 Mar 2010 16:43:47 +0000 (16:43 +0000)]
Add New NEON Format NVdImmFrm.
Ref: A7.4.6 One register and a modified immediate value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99288
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 15:50:49 +0000 (15:50 +0000)]
Add comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99284
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 15:49:37 +0000 (15:49 +0000)]
Forgot this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99283
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 15:48:04 +0000 (15:48 +0000)]
Teach simplify libcall to transform __strcpy_chk to __memcpy_chk to enable optimizations down stream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99282
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Tue, 23 Mar 2010 14:40:20 +0000 (14:40 +0000)]
add assert in argpromotion, which cannot trigger
if Function::hasAddressTaken works as advertised
also included some cosmetic cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99276
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Tue, 23 Mar 2010 13:45:54 +0000 (13:45 +0000)]
word-o
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99275
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 23 Mar 2010 06:26:18 +0000 (06:26 +0000)]
Rename some instructions to match the corresponding NEON opcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99266
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 23 Mar 2010 06:20:33 +0000 (06:20 +0000)]
Change VST1 instructions for loading Q register values to operate on pairs
of D registers. Add a separate VST1q instruction with a Q register
source operand for use by storeRegToStackSlot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99265
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Mar 2010 06:06:09 +0000 (06:06 +0000)]
Fix an incorrect logic causing instcombine to miss some _chk -> non-chk transformations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99263
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 23 Mar 2010 05:25:43 +0000 (05:25 +0000)]
Change VLD1 instructions for loading Q register values to operate on pairs
of D registers. Add a separate VLD1q instruction with a Q register
destination operand for use by loadRegFromStackSlot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99261
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 05:09:03 +0000 (05:09 +0000)]
MC: Switch to using MCInst fragments to do relaxation.
Also, both MCMachOStreamer and MCAssembler are now target independent!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99256
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 03:13:05 +0000 (03:13 +0000)]
MC: Add TargetAsmBackend::MayNeedRelaxation, for checking whether a particular instruction + fixups might need relaxation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99249
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 02:36:58 +0000 (02:36 +0000)]
MC: Add TargetAsmBackend::WriteNopData and use to eliminate some target dependencies in MCMachOStreamer and MCAssembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99248
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 01:39:09 +0000 (01:39 +0000)]
MC: Add TargetAsmBackend::RelaxInstruction callback, and custom X86 implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99245
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 23 Mar 2010 01:39:05 +0000 (01:39 +0000)]
MC: Tweak MCInstFragment to include the encoded data and fixups, so that we don't need to recompute them during relaxation. I will revisit this once all the other pieces of fast relaxation are in place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99244
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 22 Mar 2010 23:26:12 +0000 (23:26 +0000)]
Put MCSectionCOFF::Name into the MCContext instead of leaking it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99231
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 23:16:48 +0000 (23:16 +0000)]
MC: Add MCInstFragment, not used yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99229
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 23:16:43 +0000 (23:16 +0000)]
Add a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99228
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 22 Mar 2010 23:15:57 +0000 (23:15 +0000)]
Fix PR6673: updating the callback should not clear the map.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99227
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 22 Mar 2010 23:11:36 +0000 (23:11 +0000)]
Emit DW_AT_low_pc and DW_AT_high_pc attributes for TAG_compile_unit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99225
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Mar 2010 22:44:31 +0000 (22:44 +0000)]
Fix 80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99224
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 22 Mar 2010 22:38:48 +0000 (22:38 +0000)]
DW_AT_stmt_list attribute attached with a compile unit encodes offset of line number information for this compile unit in debug_line section. This offset is always zero when only one compile unit is emitted in a object file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99223
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 21:49:41 +0000 (21:49 +0000)]
MC: Fix a few more cases we were passing an MCDataFragment when a MCFragment would do, and sprinkle in some const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99218
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 21:49:38 +0000 (21:49 +0000)]
Simplify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99217
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 21:49:34 +0000 (21:49 +0000)]
MCInst: Add ::dump_pretty.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99216
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Mar 2010 21:24:33 +0000 (21:24 +0000)]
Reduce indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99214
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 22 Mar 2010 20:56:36 +0000 (20:56 +0000)]
Change intrinsic result type for void to store it as an empty list
instead of as a single element list with VoidTy. Now with a fix
for the verifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99206
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 20:35:50 +0000 (20:35 +0000)]
MC: Change MCObjectWriter::RecordRelocation to take an MCFragment (instead of a MCDataFragment). Object files should only need the generic MCFragment features.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99205
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 20:35:46 +0000 (20:35 +0000)]
MC/Mach-O: Factor out getOrCreateDataFragment().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99204
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 20:35:43 +0000 (20:35 +0000)]
MC: Eliminate MCFragment::getMaxFileSize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99203
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 22 Mar 2010 20:35:35 +0000 (20:35 +0000)]
MC: Share the MCAsmLayout object, although its still not used for anything important.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99202
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 22 Mar 2010 20:31:39 +0000 (20:31 +0000)]
Rename one more NEON instruction that I missed earlier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99201
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 22 Mar 2010 18:47:14 +0000 (18:47 +0000)]
Fix a memory leak from DIE::addSiblingOffset() by adding the DIEValue
it allocates to DwarfDebug::DIEValues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99196
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Mar 2010 18:40:50 +0000 (18:40 +0000)]
80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99195
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 22 Mar 2010 18:22:06 +0000 (18:22 +0000)]
Regroup some instructions. No functional change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99192
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 22 Mar 2010 18:13:18 +0000 (18:13 +0000)]
Rename some VLD1/VST1 instructions to match the implementation, i.e., the
corresponding NEON instructions, instead of operation they are currently
used for.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99189
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 22 Mar 2010 18:02:38 +0000 (18:02 +0000)]
Remove some redundant instruction classes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99187
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 22 Mar 2010 16:59:44 +0000 (16:59 +0000)]
llc doesn't need LinkAllVMCore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99186
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Mon, 22 Mar 2010 16:43:10 +0000 (16:43 +0000)]
Refactor instruction encoding arguments for VLDnLN/VSTnLN classes to
specify encoding bits in arguments instead of "let" expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99185
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Mon, 22 Mar 2010 16:30:04 +0000 (16:30 +0000)]
Completely remove Blackfin patterns that thought JustCC was i1.
Thanks, Chris!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99183
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 22 Mar 2010 16:13:21 +0000 (16:13 +0000)]
Don't leak a MachineInstruction from Thumb1InstrInfo::restoreCalleeSavedRegisters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99182
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 22 Mar 2010 15:56:04 +0000 (15:56 +0000)]
Avoid leaking the FunctionPassManager from opt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99180
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Mon, 22 Mar 2010 09:11:00 +0000 (09:11 +0000)]
backing out r99170 because it still fails on clang-x86_64-darwin10-fnt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99171
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Mon, 22 Mar 2010 08:28:00 +0000 (08:28 +0000)]
Now that hopefully all direct accesses to InvokeInst operands are fixed
we can reapply the InvokeInst operand reordering patch. (see r98957).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99170
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Mon, 22 Mar 2010 05:23:37 +0000 (05:23 +0000)]
Free all Constants in ~LLVMConstantImpl. We avoid assertion failures
by dropping all references from all constants that can use other
constants before trying to destroy any of them.
I also had to free bugpoint's Module in ~BugDriver().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99160
91177308-0d34-0410-b5e6-
96231b3b80d8
Erick Tryzelaar [Sun, 21 Mar 2010 23:15:13 +0000 (23:15 +0000)]
Fix the ocaml kaleidoscope tutorial to fix linking external libraries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99151
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Sun, 21 Mar 2010 22:23:02 +0000 (22:23 +0000)]
modernize the do-all-for-me target to run lit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99148
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 22:08:41 +0000 (22:08 +0000)]
Re-add the Metadata.h include to LLVMContextImpl.h so that MDNode is complete
where FoldingSet<MDNode> is instantiated. Clang and MSVC complain; gcc
doesn't.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99147
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 21:17:34 +0000 (21:17 +0000)]
Move the LLVMContextImpl implementation into a .cpp file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99146
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 20:37:19 +0000 (20:37 +0000)]
Memoize InlineAsms into the LLVMContext and delete them on shutdown.
Fixes PR803.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99143
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 08:12:46 +0000 (08:12 +0000)]
XFAIL tests from LLVMC on valgrind or valgrind+leak-checking. We
don't care about leaks from tblgen, and I assume we don't care about
valgrind errors in llvm-gcc/g++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99115
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 01:47:49 +0000 (01:47 +0000)]
Free SavedLI even if SimpleRegisterCoalescing::JoinCopy() returns early.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99113
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Sun, 21 Mar 2010 01:47:33 +0000 (01:47 +0000)]
When we don't pass --vg-leak to lit, pass --leak-check=no to valgrind.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99112
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sun, 21 Mar 2010 01:38:21 +0000 (01:38 +0000)]
Fix suggested parentheses warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99111
91177308-0d34-0410-b5e6-
96231b3b80d8