summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* fix rdar://9024687, a crash on invalid that we used to silently ignore.Chris Lattner2011-02-184-2/+11
| | | | llvm-svn: 125962
* Add emulation methods for "ADC (immediate)" and "ADC (register)".Johnny Chen2011-02-182-74/+207
| | | | | | | Plus add a helper method ReadCoreReg(uint32_t regnum, bool *success) to simplify coding a bit. llvm-svn: 125961
* Reapply r114997 now that the buildbots have been updated.Bill Wendling2011-02-182-8/+28
| | | | llvm-svn: 125960
* Add code to emulate LDRB (immediate, Thumb) instruction.Caroline Tice2011-02-181-0/+141
| | | | llvm-svn: 125959
* [analyzer] Fix a crash when analyzing C++ code.Argyrios Kyrtzidis2011-02-182-1/+8
| | | | llvm-svn: 125958
* Introduce ASTContext::getLogicalOperationType() to return bool or int, ↵Argyrios Kyrtzidis2011-02-182-3/+8
| | | | | | | | depending on language. No functionality change. llvm-svn: 125957
* This patch lets LLDB build as an LLVM subproject. LLDB is not built inStephen Wilson2011-02-181-1/+6
| | | | | | parallel with the rest of the tools directory as it depends on Clang. llvm-svn: 125956
* Fix style and a typoBruno Cardoso Lopes2011-02-181-4/+4
| | | | llvm-svn: 125949
* Add assembly parsing support for "msr" and also fix its encoding. Also addBruno Cardoso Lopes2011-02-1811-47/+236
| | | | | | testcases for the disassembler to make sure it still works for "msr". llvm-svn: 125948
* Add emulation methods for "AND (immediate)" and "AND (register)".Johnny Chen2011-02-182-16/+225
| | | | | | Plus add macro definitions for APSR_C and APSR_V to simplify code. llvm-svn: 125947
* Objective-c armv7 API for atomic properties of Fariborz Jahanian2011-02-183-97/+152
| | | | | | scalar types. // rdar://7761305 llvm-svn: 125946
* Add code to emulate LDR (register) Arm instruction.Caroline Tice2011-02-181-9/+224
| | | | llvm-svn: 125945
* accept and ignore a few things for better OpenBSD compatibility,Chris Lattner2011-02-182-1/+3
| | | | | | patch by Amit Kulkarni! llvm-svn: 125944
* improve support for OpenBSD, patch by Amit Kulkarni!Chris Lattner2011-02-181-2/+4
| | | | llvm-svn: 125943
* Expose getTypeName to the C API. Patch by Patrick Walton.Rafael Espindola2011-02-182-0/+5
| | | | llvm-svn: 125845
* Add some transforms of the kind X-Y>X -> 0>Y which are valid when there is noDuncan Sands2011-02-183-20/+143
| | | | | | overflow. These subsume some existing equality transforms, so zap those. llvm-svn: 125843
* The objectsize intrinsic doesn't access any memory.Benjamin Kramer2011-02-181-1/+1
| | | | llvm-svn: 125842
* [Heikki Kultala] This patch contains the ABI changes for the TCE target.NAKAMURA Takumi2011-02-181-2/+2
| | | | | | TCE target has some too strict alignment rules (that the HW really does not require, but which caused problems elsewhere) for data types and an ABI change was decided. llvm-svn: 125833
* add a poor division by constant case.Chris Lattner2011-02-181-0/+37
| | | | llvm-svn: 125832
* add a testcase for r125827Chris Lattner2011-02-181-0/+24
| | | | llvm-svn: 125831
* Roll out r125794 to help diagnose the llvm-gcc-i386-linux-selfhost failure.Cameron Zwarich2011-02-186-96/+17
| | | | llvm-svn: 125830
* prevent jump threading from merging blocks when their address isChris Lattner2011-02-182-2/+45
| | | | | | | | | | | | | | | | | taken (and used!). This prevents merging the blocks (invalidating the block addresses) in a case like this: #define _THIS_IP_ ({ __label__ __here; __here: (unsigned long)&&__here; }) void foo() { printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); printf("%p\n", _THIS_IP_); } which fixes PR4151. llvm-svn: 125829
* hoist GlobalValue::removeDeadConstantUsers up to being a method on Constant.Chris Lattner2011-02-184-58/+62
| | | | llvm-svn: 125828
* Don't unroll loops whose header block's address is taken.Chris Lattner2011-02-181-2/+10
| | | | | | | | | | | | | | | | | This is part of a futile attempt to not "break" bizzaro code like this: l1: printf("l1: %p\n", &&l1); ++x; if( x < 3 ) goto l1; Previously we'd fold &&l1 to 1, which is fine per our semantics but not helpful to the user. llvm-svn: 125827
* we now support __label__Chris Lattner2011-02-181-4/+0
| | | | llvm-svn: 125826
* Implement C++0x [expr.static.cast]p9, which permits explicitly castingDouglas Gregor2011-02-182-10/+44
| | | | | | | | | | a scoped enumeration type to an integral or floating type, properly. There was an over-eager assertion, and it was missing the floating-point case. Fixes PR9107/<rdar://problem/8937402>. llvm-svn: 125825
* Make -disable-simplify-libcalls work with -std-compile-optsPeter Collingbourne2011-02-181-1/+1
| | | | llvm-svn: 125824
* The flags we're supposed to write into a byref struct are *not* theJohn McCall2011-02-183-22/+67
| | | | | | | | | | | | _Block_object_* flags; it's just BLOCK_HAS_COPY_DISPOSE or not. Also, we don't need to chase forwarding pointers prior to calling _Block_object_dispose; _Block_object_dispose in fact already does this. rdar://problem/9006315 llvm-svn: 125823
* When building a qualified reference to a member of an anonymous structDouglas Gregor2011-02-182-6/+28
| | | | | | | | | or union, place the qualifier on the outermost member reference expression, which actually contains the entity name. Fixes PR9188/<rdar://problem/8990184>. llvm-svn: 125822
* Fix assertion failure on -Warray-bounds for 32-bit builds of Clang.Ted Kremenek2011-02-182-1/+10
| | | | llvm-svn: 125821
* Move CompilerInstance::LLVMContext and LLVMContext ownership to CodeGenActionPeter Collingbourne2011-02-1816-88/+53
| | | | | | | | | This removes the final dependency edge from any lib outside of CodeGen to core. As a result we can, and do, trim the dependency on core from libclang, PrintFunctionNames, the unit tests and c-index-test. While at it, review and trim other unneeded dependencies. llvm-svn: 125820
* Move TargetInfo::adjustInlineAsmType to TargetCodeGenInfoPeter Collingbourne2011-02-185-24/+36
| | | | llvm-svn: 125819
* When we're creating an expression for an integral template argument ofDouglas Gregor2011-02-182-2/+28
| | | | | | | | | | | | | enumeration type, we were generating an integer literal implicitly casted to the appropriate enumeration type. However, later checks on that expression would strip the implicit cast. This commit tweaks the lame hack, by creating an explicit cast instead of an implicit cast. The right answer is to introduce a SubstNonTypeTemplateParmExpr expression that acts like the substituted result. I'll investigate that soon. llvm-svn: 125818
* implement basic support for __label__. I wouldn't be shocked if there areChris Lattner2011-02-187-11/+78
| | | | | | | | | bugs from other clients that don't expect to see a LabelDecl in a DeclStmt, but if so they should be easy to fix. This implements most of PR3429 and rdar://8287027 llvm-svn: 125817
* rename testChris Lattner2011-02-181-0/+0
| | | | llvm-svn: 125816
* Added new target instance settings for execution settings:Greg Clayton2011-02-1810-329/+547
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Targets can now specify some additional parameters for when we debug executables that can help with plug-in selection: target.execution-level = auto | user | kernel target.execution-mode = auto | dynamic | static target.execution-os-type = auto | none | halted | live On some systems, the binaries that are created are the same wether you use them to debug a kernel, or a user space program. Many times inspecting an object file can reveal what an executable should be. For these cases we can now be a little more complete by specifying wether to detect all of these things automatically (inspect the main executable file and select a plug-in accordingly), or manually to force the selection of certain plug-ins. To do this we now allow the specficifation of wether one is debugging a user space program (target.execution-level = user) or a kernel program (target.execution-level = kernel). We can also specify if we want to debug a program where shared libraries are dynamically loaded using a DynamicLoader plug-in (target.execution-mode = dynamic), or wether we will treat all symbol files as already linked at the correct address (target.execution-mode = static). We can also specify if the inferior we are debugging is being debugged on a bare board (target.execution-os-type = none), or debugging an OS where we have a JTAG or other direct connection to the inferior stops the entire OS (target.execution-os-type = halted), or if we are debugging a program on something that has live debug services (target.execution-os-type = live). For the "target.execution-os-type = halted" mode, we will need to create ProcessHelper plug-ins that allow us to extract the process/thread and other OS information by reading/writing memory. This should allow LLDB to be used for a wide variety of debugging tasks and handle them all correctly. llvm-svn: 125815
* Handle UsingDecl in CFGRecStmtDeclVisitor.Argyrios Kyrtzidis2011-02-181-0/+2
| | | | llvm-svn: 125814
* Switch labels over to using normal name lookup, instead of their Chris Lattner2011-02-1811-151/+72
| | | | | | | own weird little DenseMap. Hey look, we now emit unused label warnings deterministically, amazing. llvm-svn: 125813
* Fix typo.Johnny Chen2011-02-181-1/+1
| | | | llvm-svn: 125812
* Unbreak the MSVC buildFrancois Pichet2011-02-181-1/+1
| | | | | | | std::make_pair is unreliable under MSVC 2010. Ref: http://stackoverflow.com/questions/2691680/why-does-visual-studio-2010-throw-this-error-with-boost-1-42-0 llvm-svn: 125811
* break testcase over multiple lines to make it easier to read.Chris Lattner2011-02-181-3/+11
| | | | llvm-svn: 125810
* Add emulation of Encoding A1 "A8.6.6 ADD (register)" and "A8.6.5 ADD ↵Johnny Chen2011-02-182-11/+91
| | | | | | (immediate, ARM)". llvm-svn: 125809
* Add code to emulate LDR (immediate,ARM) instruction.Caroline Tice2011-02-181-0/+141
| | | | llvm-svn: 125808
* Factor all the code that does "Execute a list of lldb command interpreter ↵Jim Ingham2011-02-1810-160/+444
| | | | | | commands" into a single function in the Interpreter, and then use that in all the places that used to do this by hand. llvm-svn: 125807
* handle labeldecls.Chris Lattner2011-02-181-1/+6
| | | | llvm-svn: 125806
* Recognize monitor/mwait with explicit register argumentsJoerg Sonnenberger2011-02-183-0/+26
| | | | llvm-svn: 125805
* Check the errorcode.Argyrios Kyrtzidis2011-02-181-0/+1
| | | | llvm-svn: 125804
* Trim debugging output.Jakob Stoklund Olesen2011-02-182-29/+6
| | | | llvm-svn: 125802
* Finished renamings to make the emulation method names consistent case-wise.Johnny Chen2011-02-182-19/+19
| | | | llvm-svn: 125801
* Some renamings to make the emulation method names consistent case-wise.Johnny Chen2011-02-182-50/+50
| | | | llvm-svn: 125800
OpenPOWER on IntegriCloud