summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add Mips to the list of target architectures for the MCJIT tests.Akira Hatanaka2012-06-211-2/+2
| | | | | | Patch by Reed Kotler. llvm-svn: 158933
* Treat TargetGlobalAddress as a constant for the purpose of matching pre-inc ↵Hal Finkel2012-06-212-1/+28
| | | | | | | | stores on PPC. Thanks to Tobias von Koch for pointing out this problem. llvm-svn: 158932
* PR13165: False positive when initializing member data pointers with NULL.David Blaikie2012-06-212-2/+9
| | | | | | | | | This now correctly covers, I believe, all the pointer types: * 'any' pointers (both function and data normal pointers and ObjC object pointers) * member pointers (both function and data) * block pointers llvm-svn: 158931
* Avoid using the recently added APPEND_STRING feature. This shouldChandler Carruth2012-06-211-7/+9
| | | | | | | restore support for CMake versions before 2.8.6 -- sorry for the trouble! llvm-svn: 158930
* objective-c: deprecated C-like parameters in Objective-C Fariborz Jahanian2012-06-217-8/+14
| | | | | | | method declarations. // rdar://11578353. llvm-svn: 158929
* fix build in C++11 mode.Nuno Lopes2012-06-211-7/+7
| | | | | | Thanks to Chandler for pointing out the problem. llvm-svn: 158928
* Fix potential crash if DAGCombine on stores sees a half typePete Cooper2012-06-211-1/+2
| | | | llvm-svn: 158927
* Adjust this code so that it strictly honorsJohn McCall2012-06-211-4/+6
| | | | | | | | TargetSimulatroVersionFromDefines if present; this also makes it easier to chain things correctly. Noted by an internal review. llvm-svn: 158926
* The inline asm operand modifier 'c' is suppose Jack Carter2012-06-213-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to be generic across architectures. It has the following description in the gnu sources: Substitute immediate value without immediate syntax Several Architectures such as x86 have local implementations of operand modifier 'c' which go beyond the above description slightly. To make use of the generic modifiers without overriding local implementation one can make a call to the base class method for AsmPrinter::PrintAsmOperand() in the locally derived method's "default" case in the switch statement. That way if it is already defined locally the generic version will never get called. This change is needed when test/CodeGen/generic/asm-large-immediate.ll failed on a native Mips board. The test was assuming a generic implementation was in place. Affected files: lib/Target/Mips/MipsAsmPrinter.cpp: Changed the default case to call the base method. lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp Added 'c' to the switch cases. test/CodeGen/Mips/asm-large-immediate.ll Mips compiled version of the generic one Contributer: Jack Carter llvm-svn: 158925
* move some typedefs so that we don't polute the llvm namespace. this should ↵Nuno Lopes2012-06-211-3/+4
| | | | | | appease the GCC buildbots llvm-svn: 158924
* hopefully fix the buildbots: some tests have wrong definitions of malloc ↵Nuno Lopes2012-06-212-3/+18
| | | | | | and were crashing this code on 64 bits machines llvm-svn: 158923
* Small lint fix.Alexander Potapenko2012-06-211-1/+1
| | | | llvm-svn: 158922
* Add a test for issue 81 -- ↵Alexander Potapenko2012-06-213-3/+15
| | | | | | AddressSanitizerMac.DISABLED_CFAllocatorDefaultDoubleFree_ChildPhread llvm-svn: 158921
* port the BoundsChecking patch to the new MemoryBuiltin API (i.e., remove ↵Nuno Lopes2012-06-213-439/+37
| | | | | | | | most of the code from here). Remove the alloc_size.ll test until we settle on a metadata format that makes everyone happy.. llvm-svn: 158920
* refactor the MemoryBuiltin analysis:Nuno Lopes2012-06-2111-290/+717
| | | | | | | | | | | | - provide more extensive set of functions to detect library allocation functions (e.g., malloc, calloc, strdup, etc) - provide an API to compute the size and offset of an object pointed by Move a few clients (GVN, AA, instcombine, ...) to the new API. This implementation is a lot more aggressive than each of the custom implementations being replaced. Patch reviewed by Nick Lewycky and Chandler Carruth, thanks. llvm-svn: 158919
* Add a number of threshold arguments to the SRA pass.Nadav Rotem2012-06-212-19/+64
| | | | | | A patch by Tom Stellard with minor changes. llvm-svn: 158918
* Revert r158209, "test/CodeGen/Generic/APIntLoadStore.ll: Mark as XFAIL:ppc ↵NAKAMURA Takumi2012-06-211-1/+0
| | | | | | | | since r157911." It passes according to ppc changes. llvm-svn: 158917
* Less restrictive check in unit test for unsupported debug info optionsAlexey Samsonov2012-06-211-1/+1
| | | | llvm-svn: 158916
* Revert r158423 corresponding to r158796, "test/Driver/warning-options.cpp: ↵NAKAMURA Takumi2012-06-211-4/+0
| | | | | | Mark as XFAIL:cygming. -pedantic is passed with gcc-as driver. PR12920" llvm-svn: 158915
* llvm/unittests/ExecutionEngine/JIT/CMakeLists.txt: Unbreak build.NAKAMURA Takumi2012-06-211-1/+1
| | | | llvm-svn: 158914
* [tsan] first step in implementing a custom allocator for tsan (and msan) ↵Kostya Serebryany2012-06-214-4/+130
| | | | | | which saves precious shadow llvm-svn: 158913
* Add a pragma to supress an MSVC warning on some of the absurd code I'mChandler Carruth2012-06-211-0/+6
| | | | | | | | using to test the alignment support library. Patch from Nikola on IRC. llvm-svn: 158912
* Add some missing dependencies here that I missed in my first passChandler Carruth2012-06-211-1/+4
| | | | | | through. Also sort them. llvm-svn: 158911
* Clang side of a refactoring of the CMake unit test build strategy.Chandler Carruth2012-06-215-34/+40
| | | | | | | | | | | | | | | | The fundamental change is to put a CMakeLists.txt file in the unittest directory, with a single test binary produced from it. This has several advantages. Among other fundamental advantages, we start to get the checking logic for when a file is missing from the CMake build, and this caught one missing file already! More fun details in the LLVM commit corresponding to this one. Note that the LLVM commit and this one most both be applied, or neither. Sorry for any skew issues. llvm-svn: 158910
* Completely refactor the structuring of unittest CMake files to match theChandler Carruth2012-06-2112-155/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefiles, the CMake files in every other part of the LLVM tree, and sanity. This should also restore the output tree structure of all the unit tests, sorry for breaking that, and thanks for letting me know. The fundamental change is to put a CMakeLists.txt file in the unittest directory, with a single test binary produced from it. This has several advantages: - No more weird directory stripping in the unittest macro, allowing it to be used more readily in other projects. - No more directory prefixes on all the source files. - Allows correct and precise use of LLVM's per-directory dependency system. - Allows use of the checking logic for source files that have not been added to the CMake build. This uncovered a file being skipped with CMake in LLVM and one in Clang's unit tests. - Makes Specifying conditional compilation or other custom logic for JIT tests easier. It did require adding the concept of an explicit 'optional' source file to the CMake build so that the missing-file check can skip cases where the file is *supposed* to be missing. =] This is another chunk of refactoring the CMake build in order to make it usable for other clients like CompilerRT / ASan / TSan. Note that this is interdependent with a Clang CMake change. llvm-svn: 158909
* llvm-stress: Stabalize (by using an ordered container) and add randomness to ↵Nadav Rotem2012-06-211-9/+20
| | | | | | the order in which loops are generated. llvm-svn: 158908
* Make the RecursiveASTVisitor visit the body of a range-based for loopDaniel Jasper2012-06-212-1/+3
| | | | | | again. This was broken in r158395. llvm-svn: 158907
* Improve support for -g options accepted by Clang:Alexey Samsonov2012-06-214-53/+72
| | | | | | | | 1. Accept flags -g[0-3], -ggdb[0-3], -gdwarf-[2-4] and collapse them to simple -g (except -g0/-ggdb0). 2. Produce driver error on unsupported formats (-gcoff, -gstabs, -gvms) and options (-gtoggle). 3. Recognize and ignore flags -g[no-]strict-dwarf, -g[no-]record-gcc-switches. llvm-svn: 158906
* [ASan] fix lint errorAlexey Samsonov2012-06-211-1/+2
| | | | llvm-svn: 158905
* Cleanup some encoding mishaps.Bill Wendling2012-06-211-5/+5
| | | | llvm-svn: 158904
* Sphinxify the tablegen document.Bill Wendling2012-06-213-980/+802
| | | | llvm-svn: 158903
* Add a missing llvm.fma -> VFNMS pattern to the ARM backend.Lang Hames2012-06-212-0/+17
| | | | llvm-svn: 158902
* Sphinxify the outdated Packaging documentation.Bill Wendling2012-06-213-120/+77
| | | | llvm-svn: 158901
* Emit a single _udivmodsi4 libcall instead of two separate _udivsi3 andEvan Cheng2012-06-212-6/+22
| | | | | | | | _umodsi3 libcalls if they have the same arguments. This optimization was apparently broken if one of the node was replaced in place. rdar://11714607 llvm-svn: 158900
* Pretend that enum constants have enum type when inferring a block return type.Jordan Rose2012-06-212-3/+152
| | | | | | | | | | | | In C, enum constants have the type of the enum's underlying integer type, rather than the type of the enum. (This is not true in C++.) This leads to odd warnings when returning enum constants directly in blocks with inferred return types. The easiest way out of this is to pretend that, like C++, enum constants have enum type when being returned from a block. <rdar://problem/11662489> llvm-svn: 158899
* Don't warn for -Wstatic-in-inline if the used function is also inline.Jordan Rose2012-06-212-7/+29
| | | | | | | | | | | | | | | | | | Also, don't warn if the used function is __attribute__((const)), in which case it's not supposed to use global variables anyway. The inline-in-inline thing is a heuristic, and one that's possibly incorrect fairly often because the function being inlined could definitely use global variables. However, even some C standard library functions are written using other (trivial) static-inline functions in the headers, and we definitely don't want to be warning on that (or on anything that /uses/ these trivial inline functions). So we're using "inlined" as a marker for "fairly trivial". (Note that __attribute__((pure)) does /not/ guarantee safety like ((const), because ((const)) does not guarantee that global variables are not being used, and the warning is about globals not being shared across TUs.) llvm-svn: 158898
* Switch Clang to re-use the the newly factored common LLVMChandler Carruth2012-06-211-41/+4
| | | | | | implementation. Yay for '-' lines in CMake! llvm-svn: 158897
* Factor the logic for setting up a GoogleTest unit test executable intoChandler Carruth2012-06-212-45/+53
| | | | | | | a helper function in CMake. This will allow us to share all of this logic with Clang, and eventually CompilerRT. llvm-svn: 158896
* MS: Mangle rvalue references and nullptr_t, and produce back-references whenRichard Smith2012-06-214-15/+100
| | | | | | appropriate. Patch by João Matos! llvm-svn: 158895
* Simplify the Clang unittest function in the CMake build, and make itChandler Carruth2012-06-211-27/+35
| | | | | | | | match the LLVM implemenation. This also simplifies the name management and splits the custom library management out from the unittest specific management. It finally drops the dependency on parsing cmake arguments. llvm-svn: 158894
* Simplify the naming pattern in the unittests' CMake fileChandler Carruth2012-06-211-12/+16
| | | | llvm-svn: 158893
* Preliminary set of changes to ObjectFileMachO::ParseSymtab when lldbJason Molenda2012-06-211-8/+847
| | | | | | | | | | | | | | | | | is being run on iOS natively and we are examining a binary that is in the shared-cache. The shared cache may be set up to not load the symbol names in memory (and may be missing some local symbols entirely, to boot) so we need to read the on-disk-but-not-mapped-into-memory cache of symbol names/symbols before we start processing the in-memory nlist entries. This code needs to be reorganized into its own separate method, ideally we'll find some way to not duplicate the nlist symbol handling. But we need to handle this new format quickly and we'll clean up later. Thanks for James McIlree for the patch. Fixes <rdar://problem/11639018>. llvm-svn: 158891
* Bump version number to lldb-160.Jason Molenda2012-06-214-21/+21
| | | | llvm-svn: 158890
* Remove one of the LLVM-specific CMake hacks in favor of standard CMakeChandler Carruth2012-06-212-7/+7
| | | | | | | | | | facilities. This was only used in one place in LLVM, and was used pervasively (but with different code!) in Clang. It has no advantages over the standard CMake facilities and in some cases disadvantages. llvm-svn: 158889
* Remove a goofy CMake hack and use the standard CMake facilities toChandler Carruth2012-06-2130-177/+295
| | | | | | | | | express library-level dependencies within Clang. This is no more verbose really, and plays nicer with the rest of the CMake facilities. It should also have no change in functionality. llvm-svn: 158888
* If an object (such as a std::string) with an appropriate c_str() member functionRichard Smith2012-06-218-217/+518
| | | | | | | | | | | | | | | is passed to a variadic function in a position where a format string indicates that c_str()'s return type is desired, provide a note suggesting that the user may have intended to call the c_str() member. Factor the non-POD-vararg checking out of DefaultVariadicArgumentPromotion and move it to SemaChecking in order to facilitate this. Factor the call checking out of function call checking and block call checking, and extend it to cover constructor calls too. Patch by Sam Panzer! llvm-svn: 158887
* Enable AddressSanitizerMac.CFAllocatorDefaultDoubleFree and ↵Alexander Potapenko2012-06-211-4/+4
| | | | | | AddressSanitizerMac.CFAllocatorMallocDoubleFree, which now work fine. llvm-svn: 158886
* Factor the common code out of cf_free and mz_free.Alexander Potapenko2012-06-213-26/+12
| | | | | | Introduce the mac_ignore_invalid_free flag (0 by default) which makes both cf_free and mz_free ignore invalid free invocations and leak memory. llvm-svn: 158885
* Remove an unused feature of the clang unittest macro.Chandler Carruth2012-06-211-6/+4
| | | | llvm-svn: 158884
* Do not complain about junk on the end of a #endif in a skipped block. Such junkRichard Smith2012-06-212-1/+30
| | | | | | is permitted by all relevant language standards. Patch by Andy Gibbs! llvm-svn: 158883
OpenPOWER on IntegriCloud