Sean Callanan [Sat, 12 Nov 2011 02:31:32 +0000 (02:31 +0000)]
Fixed the MCJIT so that it can emit not only instance
methods but also class methods for Objective-C.
Clang emits Objective-C method names with '\1' at the
beginning, and the JIT has pre-existing logic to try
prepending a '\1' when searching a module for an
instance method (that is, a method whose name begins
with '-'). I simply extended it to do the same thing
when it encountered a class method (a method whose
name begins with '+').
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144451
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Sat, 12 Nov 2011 02:29:58 +0000 (02:29 +0000)]
Implement Mips64's handling of byval arguments in LowerFormalArguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144449
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Sat, 12 Nov 2011 02:25:00 +0000 (02:25 +0000)]
64-bit arbitrary immediate pattern.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144448
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Sat, 12 Nov 2011 02:20:46 +0000 (02:20 +0000)]
Function for handling byval arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144447
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 12 Nov 2011 02:11:04 +0000 (02:11 +0000)]
LLVMBuild: Add info for gtest.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144445
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 12 Nov 2011 02:10:57 +0000 (02:10 +0000)]
build: Attempt to rectify inconsistencies between CMake and LLVMBuild versions of explicit dependencies.
- The hope is that we have a tool/test to verify these are accurate (and tight) soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144444
91177308-0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sat, 12 Nov 2011 02:07:50 +0000 (02:07 +0000)]
Make sure scalarrepl picks the correct alloca when it rewrites a bitcast. Fixes PR11353.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144442
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 12 Nov 2011 01:57:54 +0000 (01:57 +0000)]
The dwarf standard says that the only differences between a out-of-line
instance and a concrete inlined instance are the use of DW_TAG_subprogram
instead of DW_TAG_inlined_subroutine and the who owns the tree.
We were also omitting DW_AT_inline from the abstract roots. To fix this,
make sure we mark abstract instance roots with DW_AT_inline even when
we have only out-of-line instances referring to them with DW_AT_abstract_origin.
FileCheck is not a very good tool for tests like this, maybe we should add
a -verify mode to llvm-dwarfdump.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144441
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Sat, 12 Nov 2011 00:58:43 +0000 (00:58 +0000)]
ARM refactor simple immediate asm operand render methods.
These immediate operands all use the same simple logic for rendering to
MCInst, so have them share the method for doing so.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144439
91177308-0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sat, 12 Nov 2011 00:35:34 +0000 (00:35 +0000)]
Don't try to form pre/post-indexed loads/stores until after LegalizeDAG runs. Fixes PR11029.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144438
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Sat, 12 Nov 2011 00:31:53 +0000 (00:31 +0000)]
Re-apply 144430, this time with the associated isel and disassmbler bits.
Original commit msg: 'ARM assembly parsing for VST1 two-register encoding.'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144437
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Sat, 12 Nov 2011 00:18:02 +0000 (00:18 +0000)]
build/Make: Define a TARGET_NATIVE_ARCH variable to be a bit more precise than
ARCH, which gets tested in many more contexts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144434
91177308-0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Fri, 11 Nov 2011 23:58:27 +0000 (23:58 +0000)]
Some cleanup and bulletproofing for node replacement in LegalizeDAG. To maintain LegalizeDAG invariants, whenever we a node is replaced, we must attempt to delete it, and if it still
has uses after it is replaced (which can happen in rare cases due to CSE), we must revisit it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144432
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 23:51:31 +0000 (23:51 +0000)]
Oops. Missed the isel half of this. revert while I sort that out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144431
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 23:45:47 +0000 (23:45 +0000)]
ARM assembly parsing for VST1 two-register encoding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144430
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 23:34:43 +0000 (23:34 +0000)]
ARM optional size suffix for VLDR/VSTR syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144427
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 23:31:03 +0000 (23:31 +0000)]
Add support in fast-isel for selecting memset/memcpy/memmove intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144426
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 23:25:38 +0000 (23:25 +0000)]
Loosen test by using REs. Approved by Devang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144425
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 23:12:56 +0000 (23:12 +0000)]
CMake: Fix CMake build for new Mips tblgen file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144423
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 23:08:10 +0000 (23:08 +0000)]
ARM vldm and vstm VFP instructions can take a data type suffix.
It's ignored by the assembler when present, but is legal syntax. Other
instructions have something similar, but for some mnemonics it's
only sometimes not significant, so this quick check in the parser will
need refactored into something more robust soon-ish. This gets some
basics working in the meantime.
Partial for rdar://
10435264
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144422
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:49 +0000 (22:59 +0000)]
build/Make: Change llvm-config-2 to be compiled as a build tool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144421
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:47 +0000 (22:59 +0000)]
llvm-config-2: Detect when we are running out of a BuildTools development tree, so that we can always provide library/include information for the real build directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144420
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:45 +0000 (22:59 +0000)]
cross-build/Make: Update cross build to properly forward ARCH and
TARGETS_TO_BUILD variables to build tools submake, and also tweak echo command
to indicate when we are compiling/etc build tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144419
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:42 +0000 (22:59 +0000)]
build/Make: Eliminate BUILD_COMPONENT variable, which is unused.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144418
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:39 +0000 (22:59 +0000)]
LLVMBuild: Add description files for the LLVM tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144417
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:23 +0000 (22:59 +0000)]
LLVMBuild: Alphabetize required_libraries lists.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144416
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 22:59:16 +0000 (22:59 +0000)]
Target/LLVMBuild: Order components alphabetically.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144415
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Fri, 11 Nov 2011 22:58:42 +0000 (22:58 +0000)]
Mips MC object code emission improvements:
"With this patch we can now generate runnable Mips code through LLVM
direct object emission. We have run numerous simple programs, both C
and C++ and with -O0 and -O3 from the output. The code is not production
ready, but quite useful for experimentation." Patch and message by
Jack Carter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144414
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 11 Nov 2011 22:51:42 +0000 (22:51 +0000)]
Add an option '--enable-libcpp' that will have the compiler pass on
options to use libc++ as the default c++ library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144413
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 22:30:06 +0000 (22:30 +0000)]
Nuke no longer accurate comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144411
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Trick [Fri, 11 Nov 2011 22:18:09 +0000 (22:18 +0000)]
Preserve MachineMemOperands in ARMLoadStoreOptimizer.
Fixes PR8113.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144409
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 11 Nov 2011 21:27:40 +0000 (21:27 +0000)]
ARM allow Q registers in vldm/vstm register lists.
rdar://
9672822
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144407
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 20:41:06 +0000 (20:41 +0000)]
build/Make: Switch back to llvm-config for now, I foolishly forgot to think
about cross compiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144406
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Fri, 11 Nov 2011 18:32:52 +0000 (18:32 +0000)]
Add a custom safepoint method, in order for language implementers to decide which machine instruction gets to be a safepoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144399
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 11 Nov 2011 18:13:19 +0000 (18:13 +0000)]
Move X86 specific test in X86 directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144395
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 11 Nov 2011 18:10:38 +0000 (18:10 +0000)]
Move X86 specific test in X86 directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144394
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 11 Nov 2011 17:34:14 +0000 (17:34 +0000)]
Remove FIXME comment that should have been removed with r144351.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144392
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Bailey [Fri, 11 Nov 2011 14:45:12 +0000 (14:45 +0000)]
allow non-device function calls in PTX when natively handling device-side printf
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144388
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Bailey [Fri, 11 Nov 2011 14:45:06 +0000 (14:45 +0000)]
add rules in tabgen for PTX COPY_ADDRESS of frameindex
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144387
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 11 Nov 2011 13:20:40 +0000 (13:20 +0000)]
Clients are responsible for initializing the targets, remove it from the disassembler API.
This will break users of the LLVMCreateDisasm API (not that I know of any). They have to call the
LLVMInitializeAll* functions from llvm-c/Target.h themselves now. edis' C API in all its horribleness
should be unaffected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144385
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 11 Nov 2011 12:39:41 +0000 (12:39 +0000)]
Remove the unnecessary dependency on libARMCodeGen from libARMDisassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144384
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 11 Nov 2011 12:39:35 +0000 (12:39 +0000)]
Remove the unnecessary dependency on libMBlazeCodeGen from libMBlazeDisassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144383
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Fri, 11 Nov 2011 07:39:23 +0000 (07:39 +0000)]
Add lowering for AVX2 shift instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144380
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 06:27:41 +0000 (06:27 +0000)]
Rename variables to avoid confusion. No functionallity change intended.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144377
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 06:20:39 +0000 (06:20 +0000)]
Add support for using immediates with select instructions.
rdar://
10412592
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144376
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:18:21 +0000 (04:18 +0000)]
Do not try to detect DAG combine patterns for integer multiply-add/sub if value
type is not i32. MIPS does not have 64-bit integer multiply-add/sub
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144373
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:14:30 +0000 (04:14 +0000)]
64-bit atomic instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144372
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:11:56 +0000 (04:11 +0000)]
Modify LowerFRAMEADDR. Use 64-bit register FP_64 when ABI is N64.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144371
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:06:38 +0000 (04:06 +0000)]
Add 64-bit versions of LEA_ADDiu and DynAlloc. Modify LowerDYNAMIC_STACKALLOC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144370
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:03:54 +0000 (04:03 +0000)]
64-bit versions of jal, jalr and bal.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144368
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 04:00:29 +0000 (04:00 +0000)]
Emit Mips64's sequence of instructions that set global register in prologue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144367
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 11 Nov 2011 03:58:36 +0000 (03:58 +0000)]
Fix printing of MCSymbolRegExpr. Needs three closing parentheses for
VK_Mips_GPOFF_HI/LO.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144366
91177308-0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Fri, 11 Nov 2011 03:16:38 +0000 (03:16 +0000)]
Make sure to expand SIGN_EXTEND_INREG for NEON vectors. PR11319, round 3.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144361
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 11 Nov 2011 03:16:32 +0000 (03:16 +0000)]
Initialize variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144360
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 02:38:59 +0000 (02:38 +0000)]
When loading a value, treat an i1 as an i8.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144356
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 11 Nov 2011 01:55:22 +0000 (01:55 +0000)]
If we have a DIE with an AT_specification use that instead of the normal
addr DIE when adding to the dwarf accelerator tables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144354
91177308-0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Fri, 11 Nov 2011 01:16:15 +0000 (01:16 +0000)]
Get rid of an optimization in SCCP which appears to have many issues. Specifically, it doesn't handle many cases involving undef correctly, and it is missing other checks which
lead to it trying to re-mark a value marked as a constant with a different value. It also appears to trigger very rarely.
Fixes PR11357.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144352
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 11 Nov 2011 01:03:50 +0000 (01:03 +0000)]
Reenable compact unwinding now that <rdar://problem/
10430076> is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144351
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 11 Nov 2011 00:59:14 +0000 (00:59 +0000)]
If we have to reset the calculation of the compact encoding, then also reset the
"saved register" index.
<rdar://problem/
10430076>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144350
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 11 Nov 2011 00:36:21 +0000 (00:36 +0000)]
Add support for using MVN to materialize negative constants.
rdar://
10412592
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144348
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 11 Nov 2011 00:28:42 +0000 (00:28 +0000)]
Disable compact unwind generation until I can solve the codegen problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144346
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 00:24:00 +0000 (00:24 +0000)]
llvm-build: Add --configure-target-def-file option.
- Can be used to generate the substitution values we currently use for the various target related .def files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144345
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 11 Nov 2011 00:23:56 +0000 (00:23 +0000)]
LLVMBuild: Add explicit information on whether targets define an assembly printer, assembly parser, or disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144344
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 23:58:34 +0000 (23:58 +0000)]
Thumb2 ldm/stm updating w/ one register in the list are LDR/STR.
rdar://
10429490
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144338
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 23:42:14 +0000 (23:42 +0000)]
ARM let processInstruction() tranforms chain.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144337
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Thu, 10 Nov 2011 23:37:56 +0000 (23:37 +0000)]
Add blurb for VMKit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144336
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 23:33:20 +0000 (23:33 +0000)]
build/Make: llvm-config-2 needs to use EXEEXT, since it is an actual executable
now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144335
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 23:33:18 +0000 (23:33 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144334
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 23:17:11 +0000 (23:17 +0000)]
Thumb2 parsing for push/pop w/ hi registers in the reglist.
rdar://
10130228.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144331
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 23:01:27 +0000 (23:01 +0000)]
Thumb1 diagnostics for reglist on PUSH/POP fix.
Was not checking the first register in the register list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144329
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 22:55:50 +0000 (22:55 +0000)]
git: Add tools/lldb to the ignore list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144328
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 10 Nov 2011 22:34:29 +0000 (22:34 +0000)]
Check in getOrCreateSubprogramDIE if a declaration exists and if so output
it first.
This is a more general fix to pr11300.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144324
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 22:11:04 +0000 (22:11 +0000)]
build/Make: Try to switch over to llvm-config-2 again, now that I've cleaned up
some more of the explicit dependencies. I'm staging things more slowly this time
in case there is more unanticipated fallout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144323
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 22:10:12 +0000 (22:10 +0000)]
Thumb MUL assembly parsing for 3-operand form.
Get the source register that isn't tied to the destination register correct,
even when the assembly source operand order is backwards.
rdar://
10428630
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144322
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 22:00:37 +0000 (22:00 +0000)]
build/MBlazeDisassembler: Some compilers may generate an MBlaze disassembler
that depends on MBlazeCodeGen. This is a layering violation that should really
be fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144321
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 22:00:34 +0000 (22:00 +0000)]
build/MCDisassembler: Fix required libraries list of MCDisassembler to use
all-targets instead of an explicit list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144320
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 10 Nov 2011 21:47:55 +0000 (21:47 +0000)]
Make types and namespaces take multiple DIEs for the accelerator tables
as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144319
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 10 Nov 2011 21:12:28 +0000 (21:12 +0000)]
Remove a really ancient line from the default 'make clean' rule that attempts
to delete core files. This causes a warning in clang/lib/StaticAnalyzer on
case insensitive filesystems, since it contains a "Core" directory. Since this
is pointless anyway, just zap it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144317
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Thu, 10 Nov 2011 21:09:49 +0000 (21:09 +0000)]
When in ARM mode, LDRH/STRH require special handling of negative offsets.
For correctness, disable this for now.
rdar://
10418009
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144316
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 20:48:53 +0000 (20:48 +0000)]
ARM .thumb_func directive for quoted symbol names.
Use the getIdentifier() method of the token, not getString(), otherwise
we keep the quotes as part of the symbol name, which we don't want.
rdar://
10428015
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144315
91177308-0d34-0410-b5e6-
96231b3b80d8
Tony Linthicum [Thu, 10 Nov 2011 20:39:51 +0000 (20:39 +0000)]
test commit undo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144314
91177308-0d34-0410-b5e6-
96231b3b80d8
Tony Linthicum [Thu, 10 Nov 2011 20:23:28 +0000 (20:23 +0000)]
test commit redux
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144313
91177308-0d34-0410-b5e6-
96231b3b80d8
Pete Cooper [Thu, 10 Nov 2011 20:22:08 +0000 (20:22 +0000)]
Fixed bug in DeadStoreElimination commit r144239
Size of data being pointed to wasn't always being checked so some small writes were killing big writes
Fixes <rdar://problem/
10426753>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144312
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 10 Nov 2011 20:15:40 +0000 (20:15 +0000)]
random notes, llvm-gcc is gone, fix a few broken tags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144311
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 19:59:35 +0000 (19:59 +0000)]
Revert r144300 "llvm-config: Replace with C++ version (was llvm-config-2).",
which didn't appear ready for prime time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144309
91177308-0d34-0410-b5e6-
96231b3b80d8
Tony Linthicum [Thu, 10 Nov 2011 19:58:22 +0000 (19:58 +0000)]
undo test commit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144308
91177308-0d34-0410-b5e6-
96231b3b80d8
Tony Linthicum [Thu, 10 Nov 2011 19:58:03 +0000 (19:58 +0000)]
test commit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144307
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 10 Nov 2011 19:52:58 +0000 (19:52 +0000)]
Move type handling to make sure we get all created types that aren't
forward decls and have names into the dwarf accelerator types table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144306
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 10 Nov 2011 19:25:34 +0000 (19:25 +0000)]
Rework adding function names to the dwarf accelerator tables, allow
multiple dies per function and support C++ basenames.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144304
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 10 Nov 2011 19:25:09 +0000 (19:25 +0000)]
Add additional checking to ensure that MachineMemOperands are never set to null, which can happen in weird circumstances where target intrinsic hooks are implemented incorrectly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144303
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 19:18:01 +0000 (19:18 +0000)]
ARM assembly parsing for LSR/LSL/ROR(immediate).
More of rdar://
9704684
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144301
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 18:49:59 +0000 (18:49 +0000)]
llvm-config: Replace with C++ version (was llvm-config-2).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144300
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 18:49:50 +0000 (18:49 +0000)]
llvm-config-2: Use USEDLIBS directly instead of LINK_COMPONENTS, which will
require this tool to resolve (currently).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144299
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 10 Nov 2011 18:44:29 +0000 (18:44 +0000)]
Release notes for DragonEgg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144298
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 10 Nov 2011 16:44:55 +0000 (16:44 +0000)]
ARM assembly parsing for ASR(immediate).
Start of rdar://
9704684
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144293
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 15:35:14 +0000 (15:35 +0000)]
build: Rename CBackend and CppBackend libraries to have CodeGen suffix, for
consistency with other targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144292
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 10 Nov 2011 14:53:23 +0000 (14:53 +0000)]
llvm-config-2: Fix thinko in maintenance of visited component set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144291
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Thu, 10 Nov 2011 14:18:59 +0000 (14:18 +0000)]
test/CodeGen/X86/lsr-loop-exit-cond.ll: Try to appease linux and freebsd bots to specify explicit -mtriple=x86_64-darwin.
I guess it expects -relocation-model=pic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144290
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 10 Nov 2011 07:43:16 +0000 (07:43 +0000)]
Use a bigger hammer to fix PR11314 by disabling the "forcing two-address
instruction lower optimization" in the pre-RA scheduler.
The optimization, rather the hack, was done before MI use-list was available.
Now we should be able to implement it in a better way, perhaps in the
two-address pass until a MI scheduler is available.
Now that the scheduler has to backtrack to handle call sequences. Adding
artificial scheduling constraints is just not safe. Furthermore, the hack
is not taking all the other scheduling decisions into consideration so it's just
as likely to pessimize code. So I view disabling this optimization goodness
regardless of PR11314.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144267
91177308-0d34-0410-b5e6-
96231b3b80d8
Nadav Rotem [Thu, 10 Nov 2011 06:54:20 +0000 (06:54 +0000)]
AVX2: Add variable shift from memory.
Note: These patterns only works in some cases because
many times the load sd node is bitcasted from a load
node of a different type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144266
91177308-0d34-0410-b5e6-
96231b3b80d8