summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM thumb assembly parsing for arithmetic flag setting instructions.Jim Grosbach2011-08-166-10/+71
| | | | | | | | | Thumb one requires that many arithmetic instruction forms have an 'S' suffix. For Thumb2, the whether the suffix is required or precluded depends on whether the instruction is in an IT block. Use target parser predicates to check for these sorts of context-sensitive constraints. llvm-svn: 137746
* Use the getFirstInsertionPt() method instead of getFirstNonPHI + an 'isa<>'Bill Wendling2011-08-165-24/+12
| | | | | | check for a LandingPadInst. llvm-svn: 137745
* Add getFirstInsertionPt() method.Bill Wendling2011-08-162-0/+15
| | | | | | | | getFirstInsertionPt() returns an iterator to the first insertion point in a basic block. This is after all PHIs and any other instruction which is required to be at the top of the basic block (like LandingPadInst). llvm-svn: 137744
* I think there was some confusion about what I meant. :-) Replacing the comment.Bill Wendling2011-08-161-1/+4
| | | | llvm-svn: 137743
* Prefer diagnostics from target predicate in asm matcher.Jim Grosbach2011-08-161-2/+5
| | | | llvm-svn: 137742
* The redo script did not take into account the compiler and architecture ↵Johnny Chen2011-08-161-3/+24
| | | | | | configuration of the failed tests. llvm-svn: 137741
* MacOSKeychainAPIChecker: Turn it on by default.Anna Zaks2011-08-162-8/+4
| | | | llvm-svn: 137740
* Take clang output into account.Johnny Chen2011-08-161-1/+1
| | | | llvm-svn: 137739
* Re-enable the test for ValueAsUnsigned on a register Value.Jim Ingham2011-08-161-5/+3
| | | | llvm-svn: 137738
* Fixed an issue where we could end up creating multipleGreg Clayton2011-08-161-29/+59
| | | | | | | | | | | C++ methods for a function depending on how the DWARF was created. Now we parse the class type from the definition, and all methods that use DW_AT_specification or DW_AT_abstract_origin attributes to point to the definition, now won't create duplicate entries. This is in response to how clang++ creates much different DWARF than gcc. llvm-svn: 137737
* Update createMCAsmParser() to match r137735.Jim Grosbach2011-08-161-1/+1
| | | | llvm-svn: 137736
* Remove unused Target argument from AsmParser construction methods.Jim Grosbach2011-08-166-11/+10
| | | | | | The argument is unused, and is a layering violation in any case. llvm-svn: 137735
* Remove unused forward declaration.Jim Grosbach2011-08-161-1/+0
| | | | llvm-svn: 137734
* Instead of always leaving the work to the generic legalizer whenBruno Cardoso Lopes2011-08-162-0/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | there is no support for native 256-bit shuffles, be more smart in some cases, for example, when you can extract specific 128-bit parts and use regular 128-bit shuffles for them. Example: For this shuffle: shufflevector <4 x i64> %a, <4 x i64> %b, <4 x i32> <i32 1, i32 0, i32 7, i32 6> This was expanded to: vextractf128 $1, %ymm1, %xmm2 vpextrq $0, %xmm2, %rax vmovd %rax, %xmm1 vpextrq $1, %xmm2, %rax vmovd %rax, %xmm2 vpunpcklqdq %xmm1, %xmm2, %xmm1 vpextrq $0, %xmm0, %rax vmovd %rax, %xmm2 vpextrq $1, %xmm0, %rax vmovd %rax, %xmm0 vpunpcklqdq %xmm2, %xmm0, %xmm0 vinsertf128 $1, %xmm1, %ymm0, %ymm0 ret Now we get: vshufpd $1, %xmm0, %xmm0, %xmm0 vextractf128 $1, %ymm1, %xmm1 vshufpd $1, %xmm1, %xmm1, %xmm1 vinsertf128 $1, %xmm1, %ymm0, %ymm0 llvm-svn: 137733
* Fixed the logging output that appears when doing a:Greg Clayton2011-08-161-6/+4
| | | | | | (lldb) target modules dump symfile llvm-svn: 137732
* Fixed a performance problem where functions wereSean Callanan2011-08-161-4/+18
| | | | | | | | | being searched for in too heavyweight a way. Now, when asking for the address of a function, the expression parser just asks for a corresponding data symbol. llvm-svn: 137731
* Remove unnecessary version check.Devang Patel2011-08-161-2/+1
| | | | llvm-svn: 137728
* Add test case for r137711.Akira Hatanaka2011-08-161-0/+36
| | | | llvm-svn: 137725
* Fix the test suite error of:Johnny Chen2011-08-161-1/+1
| | | | | | | | | | ... File "/Volumes/data/lldb/svn/trunk/test/lldbtest.py", line 243, in __init__ self.session = test.session if test else None AttributeError: 'StdCXXDisassembleTestCase' object has no attribute 'session' llvm-svn: 137724
* ARM .align NOP padding uses different encoding pre-ARMv6.Jim Grosbach2011-08-165-14/+81
| | | | | | Patch by Kristof Beyls and James Malloy. llvm-svn: 137723
* Python commands:Enrico Granata2011-08-1613-8/+754
| | | | | | | | | | | | | It is now possible to use 'command alias --python' to define a command name that actually triggers execution of a Python function (e.g. command alias --python foo foo_impl makes a command named 'foo' that runs Python function 'foo_impl') The Python function foo_impl should have as signature: def foo_impl(debugger, args, stream, dict): where debugger is an object wrapping an LLDB SBDebugger args is the command line arguments, as an unparsed Python string stream is an SBStream that represents the standard output dict is an internal utility parameter and should be left untouched The function should return None on no error, or an error string to describe any problems llvm-svn: 137722
* Tidy up. Trailing whitespace.Jim Grosbach2011-08-161-45/+45
| | | | llvm-svn: 137721
* MacOSKeychainAPIChecker: Do not report double allocation if first allocation ↵Anna Zaks2011-08-162-18/+30
| | | | | | returned an error. llvm-svn: 137720
* Revert r137562 because it caused PR10674Nadav Rotem2011-08-161-7/+0
| | | | llvm-svn: 137719
* Add a mechanism for optimisation plugins to register passes that all front ↵David Chisnall2011-08-162-1/+29
| | | | | | | | ends can use without needing to be aware of the plugin (or the plugin be aware of the front end). Before 3.0, I'd like to add a mechanism for automatically loading a set of plugins from a config file. API suggestions welcome... llvm-svn: 137717
* Remove unimplemented method. Fixes PR10658.Rafael Espindola2011-08-161-10/+0
| | | | | | Thanks to Jonas Gafele for noticing. llvm-svn: 137716
* cmake/modules/FindBison.cmake: It must be unneeded any more.NAKAMURA Takumi2011-08-161-52/+0
| | | | llvm-svn: 137715
* [analyzer] Enhance ConditionVisitor to handle arbitrary ValueDecls in binary ↵Ted Kremenek2011-08-161-13/+34
| | | | | | expressions, and also handle inverting the order of comparison when the named decl appears on the RHS. llvm-svn: 137714
* A few places where we want to skip the landingpad instruction for insertion.Bill Wendling2011-08-163-2/+8
| | | | llvm-svn: 137712
* Fix handling of double precision loads and stores when Mips1 is targeted. Akira Hatanaka2011-08-167-168/+74
| | | | | | | | | | | | | | | Mips1 does not support double precision loads or stores, therefore two single precision loads or stores must be used in place of these instructions. This patch treats double precision loads and stores as if they are legal instructions until MCInstLowering, instead of generating the single precision instructions during instruction selection or Prolog/Epilog code insertion. Without the changes made in this patch, llc produces code that has the same problem described in r137484 or bails out when MipsInstrInfo::storeRegToStackSlot or loadRegFromStackSlot is called before register allocation. llvm-svn: 137711
* Fixed register value objects to be able to return their values as unsignedGreg Clayton2011-08-163-1/+13
| | | | | | and signed integers. llvm-svn: 137710
* CMake: "clang-test" may not depend on check.deps.NAKAMURA Takumi2011-08-161-1/+2
| | | | | | | ...I believe it would not break anything... FIXME: "check-all" may not be generated w/o LLVM_INCLUDE_TESTS. llvm-svn: 137709
* [analyzer] fix operation inversion calculation in ConditionVisitor.Ted Kremenek2011-08-161-1/+1
| | | | llvm-svn: 137708
* Define function MipsMCInstLower::LowerOperand. Akira Hatanaka2011-08-162-25/+29
| | | | llvm-svn: 137707
* Add parameter Offset to MipsMCInstLower::LowerSymbolOperand. Akira Hatanaka2011-08-162-5/+5
| | | | llvm-svn: 137706
* [analyzer] Enhance ConditionVisitor to understand eagerly evaluated (simple) ↵Ted Kremenek2011-08-161-14/+129
| | | | | | binary conditions, and teach it to only focus on constraint changes. llvm-svn: 137705
* [analyzer] add ExprEngine::getEagerlyAssumedTags() to allow externally ↵Ted Kremenek2011-08-162-7/+20
| | | | | | querying of "eagerly assumed" expressions. llvm-svn: 137704
* Fix test.Eli Friedman2011-08-161-1/+1
| | | | llvm-svn: 137703
* Revert a bit of r137667; the logic in question can safely handle atomic ↵Eli Friedman2011-08-162-4/+25
| | | | | | load/store. llvm-svn: 137702
* Allow for a cpu subtype of 4 to still be recognized as an x86_64Jason Molenda2011-08-161-0/+1
| | | | | | | processor; we may get this subtype ("CPU_SUBTYPE_X86_ARCH1") back when starting a kdp session. llvm-svn: 137701
* Migrate this test from llvm/test/FrontendC++/ptr-to-method-devirt.cpp andEric Christopher2011-08-161-0/+39
| | | | | | FileCheckize. It is more properly an optimizer test. llvm-svn: 137700
* Fix two logic errors uncovered by the static analyzer.Johnny Chen2011-08-161-3/+3
| | | | | | | | | For the default case (illegal encoding type), just return false instead of break. A8.6.84 LDRSH (register) A8.6.309 VLD1 (single element to all lanes) llvm-svn: 137699
* Modify the expected substrings to accomodate clang, now that ↵Johnny Chen2011-08-161-1/+1
| | | | | | rdar://problem/8516141 has been fixed. llvm-svn: 137698
* [analyzer] Remove PostStmtCustom ProgramPoint. It can be represented using ↵Ted Kremenek2011-08-163-37/+10
| | | | | | tagged PostStmts. llvm-svn: 137697
* Forgot to initialize the self.__skipped__ attribute lldbtest.Base.Johnny Chen2011-08-161-0/+2
| | | | llvm-svn: 137696
* Fixed an issue where a variable that was a pointer whoseGreg Clayton2011-08-161-3/+4
| | | | | | | location was in a register would not be able to dereference children when displaying "*var" or the derefence of the variable. llvm-svn: 137695
* After talking with Bill, it seems like the LandingPad handling here is likelyEli Friedman2011-08-161-4/+1
| | | | | | to be wrong (or at least somewhat suspect). Leave a FIXME for Bill. llvm-svn: 137694
* Minor comment fixes.Eli Friedman2011-08-162-5/+7
| | | | llvm-svn: 137693
* Add missing check for non-NULL frame_sp.Jim Ingham2011-08-161-3/+6
| | | | llvm-svn: 137692
* Update SimplifyCFG for atomic operations.Eli Friedman2011-08-152-10/+69
| | | | | | | | This commit includes a mention of the landingpad instruction, but it's not changing the behavior around it. I think the current behavior is correct, though. Bill, can you double-check that? llvm-svn: 137691
OpenPOWER on IntegriCloud