aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of an optimization in SCCP which appears to have many issues. ↵Eli Friedman2011-11-112-187/+1
| | | | | | | | | | | | 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
* Reenable compact unwinding now that <rdar://problem/10430076> is fixed.Bill Wendling2011-11-111-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144351 91177308-0d34-0410-b5e6-96231b3b80d8
* If we have to reset the calculation of the compact encoding, then also reset theBill Wendling2011-11-111-0/+1
| | | | | | | | "saved register" index. <rdar://problem/10430076> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144350 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for using MVN to materialize negative constants.Chad Rosier2011-11-113-9/+130
| | | | | | rdar://10412592 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144348 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable compact unwind generation until I can solve the codegen problems.Bill Wendling2011-11-111-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144346 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-build: Add --configure-target-def-file option.Daniel Dunbar2011-11-113-9/+115
| | | | | | - 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
* LLVMBuild: Add explicit information on whether targets define an assembly ↵Daniel Dunbar2011-11-1112-4/+44
| | | | | | printer, assembly parser, or disassembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144344 91177308-0d34-0410-b5e6-96231b3b80d8
* Thumb2 ldm/stm updating w/ one register in the list are LDR/STR.Jim Grosbach2011-11-101-0/+32
| | | | | | rdar://10429490 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144338 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM let processInstruction() tranforms chain.Jim Grosbach2011-11-101-15/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144337 91177308-0d34-0410-b5e6-96231b3b80d8
* Add blurb for VMKit.Nicolas Geoffray2011-11-101-6/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144336 91177308-0d34-0410-b5e6-96231b3b80d8
* build/Make: llvm-config-2 needs to use EXEEXT, since it is an actual executableDaniel Dunbar2011-11-101-1/+1
| | | | | | now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144335 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo.Daniel Dunbar2011-11-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144334 91177308-0d34-0410-b5e6-96231b3b80d8
* Thumb2 parsing for push/pop w/ hi registers in the reglist.Jim Grosbach2011-11-102-2/+47
| | | | | | rdar://10130228. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144331 91177308-0d34-0410-b5e6-96231b3b80d8
* Thumb1 diagnostics for reglist on PUSH/POP fix.Jim Grosbach2011-11-101-2/+2
| | | | | | 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
* git: Add tools/lldb to the ignore list.Daniel Dunbar2011-11-101-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144328 91177308-0d34-0410-b5e6-96231b3b80d8
* Check in getOrCreateSubprogramDIE if a declaration exists and if so outputRafael Espindola2011-11-103-13/+55
| | | | | | | | 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
* build/Make: Try to switch over to llvm-config-2 again, now that I've cleaned upDaniel Dunbar2011-11-102-2/+2
| | | | | | | 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
* Thumb MUL assembly parsing for 3-operand form.Jim Grosbach2011-11-102-7/+11
| | | | | | | | | 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
* build/MBlazeDisassembler: Some compilers may generate an MBlaze disassemblerDaniel Dunbar2011-11-101-1/+7
| | | | | | | 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
* build/MCDisassembler: Fix required libraries list of MCDisassembler to useDaniel Dunbar2011-11-101-1/+3
| | | | | | all-targets instead of an explicit list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144320 91177308-0d34-0410-b5e6-96231b3b80d8
* Make types and namespaces take multiple DIEs for the accelerator tablesEric Christopher2011-11-102-14/+24
| | | | | | as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144319 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a really ancient line from the default 'make clean' rule that attemptsChris Lattner2011-11-101-1/+3
| | | | | | | | | | 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
* When in ARM mode, LDRH/STRH require special handling of negative offsets.Chad Rosier2011-11-102-1/+140
| | | | | | | 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
* ARM .thumb_func directive for quoted symbol names.Jim Grosbach2011-11-101-3/+3
| | | | | | | | | 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
* test commit undoTony Linthicum2011-11-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144314 91177308-0d34-0410-b5e6-96231b3b80d8
* test commit reduxTony Linthicum2011-11-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144313 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed bug in DeadStoreElimination commit r144239Pete Cooper2011-11-101-1/+1
| | | | | | | | | 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
* random notes, llvm-gcc is gone, fix a few broken tags.Chris Lattner2011-11-101-123/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144311 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r144300 "llvm-config: Replace with C++ version (was llvm-config-2).",Daniel Dunbar2011-11-1014-69/+938
| | | | | | 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
* undo test commitTony Linthicum2011-11-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144308 91177308-0d34-0410-b5e6-96231b3b80d8
* test commitTony Linthicum2011-11-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144307 91177308-0d34-0410-b5e6-96231b3b80d8
* Move type handling to make sure we get all created types that aren'tEric Christopher2011-11-101-7/+5
| | | | | | 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
* Rework adding function names to the dwarf accelerator tables, allowEric Christopher2011-11-103-71/+86
| | | | | | 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
* Add additional checking to ensure that MachineMemOperands are never set to ↵Owen Anderson2011-11-101-0/+2
| | | | | | 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
* ARM assembly parsing for LSR/LSL/ROR(immediate).Jim Grosbach2011-11-104-12/+83
| | | | | | More of rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144301 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-config: Replace with C++ version (was llvm-config-2).Daniel Dunbar2011-11-1014-938/+69
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144300 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-config-2: Use USEDLIBS directly instead of LINK_COMPONENTS, which willDaniel Dunbar2011-11-101-1/+1
| | | | | | require this tool to resolve (currently). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144299 91177308-0d34-0410-b5e6-96231b3b80d8
* Release notes for DragonEgg.Duncan Sands2011-11-101-6/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144298 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM assembly parsing for ASR(immediate).Jim Grosbach2011-11-104-8/+45
| | | | | | Start of rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144293 91177308-0d34-0410-b5e6-96231b3b80d8
* build: Rename CBackend and CppBackend libraries to have CodeGen suffix, forDaniel Dunbar2011-11-104-6/+6
| | | | | | consistency with other targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144292 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-config-2: Fix thinko in maintenance of visited component set.Daniel Dunbar2011-11-101-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144291 91177308-0d34-0410-b5e6-96231b3b80d8
* test/CodeGen/X86/lsr-loop-exit-cond.ll: Try to appease linux and freebsd ↵NAKAMURA Takumi2011-11-101-1/+1
| | | | | | | | 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
* Use a bigger hammer to fix PR11314 by disabling the "forcing two-addressEvan Cheng2011-11-1012-21/+36
| | | | | | | | | | | | | | | | | 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
* AVX2: Add variable shift from memory.Nadav Rotem2011-11-101-1/+24
| | | | | | | | | 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
* For immediate encodings of icmp, zero or sign extend first. ThenChad Rosier2011-11-102-5/+22
| | | | | | | determine if the value is negative and flip the sign accordingly. rdar://10422026 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144258 91177308-0d34-0410-b5e6-96231b3b80d8
* build/Make & CMake: Pass the appropriate --native-target and --enable-targetsDaniel Dunbar2011-11-104-6/+17
| | | | | | options to llvm-build, so the all-targets etc. components are defined properly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144255 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-build: Add --native-target and --enable-targets options, and add logic toDaniel Dunbar2011-11-1015-16/+133
| | | | | | | | | | handle defining the "magic" target related components (like native, nativecodegen, and engine). - We still require these components to be in the project (currently in lib/Target) so that we have a place to document them and hopefully make it more obvious that they are "magic". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144253 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-build: Split out the validation logic.Daniel Dunbar2011-11-101-3/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144252 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-build: Change CBackend and CppBackend to not use library_name. This willDaniel Dunbar2011-11-102-2/+0
| | | | | | | | | change the generated library .a file name once we fully switch over, but simplifies how we treat these targets without requiring more special casing (since their library group name and the codegen library name currently map to the same "llvm-config" style component name). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144251 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-build: Add an explicit component type to represent targets.Daniel Dunbar2011-11-1015-22/+112
| | | | | | - Gives us a place to hang target specific metadata (like whether the target has a JIT). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144250 91177308-0d34-0410-b5e6-96231b3b80d8