summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* c: implement gcc's -Wbad-function-cast which warnsFariborz Jahanian2012-08-174-2/+91
| | | | | | | on unsafe cast of a c-function call. This is a C-only option. llvm-svn: 162109
* Consistently label __bit_array as a struct, not a class.Howard Hinnant2012-08-172-3/+3
| | | | llvm-svn: 162108
* Add comment, clean up code. No functional change.Jakob Stoklund Olesen2012-08-171-30/+39
| | | | llvm-svn: 162107
* Define __builtin_ffs[ll] with a signed argument instead of unsigned.Benjamin Kramer2012-08-172-3/+8
| | | | | | GCC documents these as unsigned, but defines them as signed. llvm-svn: 162106
* [ms-inline asm] Instantiate the MCStreamer as a NullStream. We're parsingChad Rosier2012-08-171-1/+1
| | | | | | instruction, not emitting them, so a NullStream is fine. llvm-svn: 162105
* Committed a simple dtrace script that tracksSean Callanan2012-08-171-0/+18
| | | | | | | process termination, which can be useful to track debugserver's delivery of signals. llvm-svn: 162104
* Intercept siglongjmp and _longjmp under "#if ASAN_INTERCEPT_*"Alexander Potapenko2012-08-171-0/+4
| | | | llvm-svn: 162103
* Add release notes for type safety attributes.Dmitri Gribenko2012-08-171-0/+19
| | | | llvm-svn: 162102
* TargetLowering: Use the large shift amount during legalize types. The ↵Benjamin Kramer2012-08-172-3/+35
| | | | | | legalizer may call us with an overly large type. llvm-svn: 162101
* Use standard pattern for iterate+erase.Jakob Stoklund Olesen2012-08-171-9/+2
| | | | | | | | | Increment the MBB iterator at the top of the loop to properly handle the current (and previous) instructions getting erased. This fixes PR13625. llvm-svn: 162099
* Guard MemoryBuiltins against self-looping GEPs, which can occur in ↵Benjamin Kramer2012-08-172-0/+21
| | | | | | | | unreachable code due to constant propagation. Fixes PR13621. llvm-svn: 162098
* Fix broken check lines.Benjamin Kramer2012-08-1710-28/+27
| | | | | | | | I really need to find a way to automate this, but I can't come up with a regex that has no false positives while handling tricky cases like custom check prefixes. llvm-svn: 162097
* Fix broken check lines.Benjamin Kramer2012-08-172-9/+9
| | | | llvm-svn: 162096
* Implement NEON domain switching for scalar <-> S-register vmovs on ARMTim Northover2012-08-172-47/+129
| | | | llvm-svn: 162094
* Warn about self-initialization of references.Hans Wennborg2012-08-175-10/+31
| | | | | | | Initializing a reference with itself, e.g. "int &a = a;" seems like a very bad idea. llvm-svn: 162093
* Fix lint warnings.Alexander Potapenko2012-08-171-2/+2
| | | | llvm-svn: 162092
* Commit the source and CMake changes that will allow to build ASan runtimeAlexander Potapenko2012-08-175-16/+196
| | | | | | | as a shared library on Mac OS. This will provide an alternative to mach_override. llvm-svn: 162091
* Insertion of NoFolder functions to avoid ambiguous overload warnings or ↵Jin-Gu Kang2012-08-171-0/+12
| | | | | | errors about whether to convert Idx to ArrayRef<Constant *> or ArrayRef<Value *> like ConstantFolder and TargetFolder. llvm-svn: 162090
* Use nested switch to select arguments to reduce calls to EmitPCMP.Craig Topper2012-08-171-5/+20
| | | | llvm-svn: 162089
* Make ReplaceATOMIC_BINARY_64 a static function. Use a nested switch to ↵Craig Topper2012-08-172-19/+30
| | | | | | reduce to only a single call to it thus allowing it to be inlined by the compiler. llvm-svn: 162088
* Test commit.Pranav Bhandarkar2012-08-171-1/+1
| | | | | | | include/llvm/IntrinsicsHexagon.td: Hexagon_Intrinsic is the base class for all Hexagon intrinsics and not altivec intrinsics. llvm-svn: 162087
* Remove unnecessary include of ARMGenInstrInfo.inc.Craig Topper2012-08-171-1/+0
| | | | llvm-svn: 162086
* Declare some for loop indices inside the for loop statement.Craig Topper2012-08-171-20/+13
| | | | llvm-svn: 162085
* Make the spacing of the code completion result for NSDictionaryDouglas Gregor2012-08-173-4/+3
| | | | | | | literals match the spacing introduced by the ObjC modernizer. Fixes the rest of <rdar://problem/11889572>. llvm-svn: 162084
* When we need the complete set of visible declarations from aDouglas Gregor2012-08-173-2/+16
| | | | | | | | declaration context, check whether the primary context---not the current context---has any external visible declarations. Fixes PR13616. llvm-svn: 162083
* Fix up indentation of outputted decode function for readability.Craig Topper2012-08-171-8/+8
| | | | llvm-svn: 162082
* Don't do jump-scope checking when code completion is enabled. It'sDouglas Gregor2012-08-173-4/+6
| | | | | | | | both a waste of time, and prone to crash due to the use of the error-recovery path in parser. Fixes <rdar://problem/12103608>, which has been driving me nuts. llvm-svn: 162081
* Temporarily revert r162066 and r162062 to see if it brings the gdbEric Christopher2012-08-172-32/+15
| | | | | | bots back. llvm-svn: 162080
* Fix undefined behavior in debug info emission: operator* on WeakVH returns aRichard Smith2012-08-171-17/+24
| | | | | | | | reference, so &* on an empty WeakVH binds a reference to a dereferenced null pointer. So don't do that; we have a perfectly good implicit conversion to Value*. llvm-svn: 162079
* lit: Show actually created count of threads. The incorrect threads count is ↵NAKAMURA Takumi2012-08-171-3/+3
| | | | | | | | printed if the number of tests are less than the number of default threads. Thanks to Vinson Lee, reported in PR13620. llvm-svn: 162078
* Fix test so that it doesn't keep failing forever when it's failed once.Richard Smith2012-08-171-3/+3
| | | | llvm-svn: 162077
* Switch PTH format from a 7 byte magic number to an 8 byte one, to avoidRichard Smith2012-08-173-5/+5
| | | | | | misaligned reads throughout the file. Bump PTH format version to 10. llvm-svn: 162076
* Fix -Wl,--no-demangle to actually pass the flag to the linker on Linux insteadNick Lewycky2012-08-172-2/+12
| | | | | | of silently dropping it on the floor. llvm-svn: 162075
* Don't forget to apply #pragma pack to partial and explicit specializations ofRichard Smith2012-08-173-0/+37
| | | | | | | class templates. This fixes misalignment issues in llvm/Support/Endian.h when built by Clang. llvm-svn: 162074
* [analyzer] Add an internal reference document describing IPA and CallEvent.Jordan Rose2012-08-171-0/+96
| | | | | | | | | This attempts to be a higher-level description of our inlining heuristics and decision trees than the source, where the work is spread out between ExprEngine (mostly in ExprEngineCallAndReturn.cpp) and CallEvent, with a few other classes participating as well. llvm-svn: 162073
* Flatten the aligned-char-array utility template to be a directlyChandler Carruth2012-08-173-134/+133
| | | | | | | templated union at the request of Richard Smith. This makes it substantially easier to type. =] llvm-svn: 162072
* [analyzer] Unbreak the static analyzer buildbot.Anna Zaks2012-08-171-1/+3
| | | | | | | We no longer associate the correct HTML file with plist diagnostic. Fall out from r162028. llvm-svn: 162071
* Avoid binding a reference to a dereferenced null pointer, if we try to emit aRichard Smith2012-08-171-0/+3
| | | | | | diagnostic before we have a source manager. llvm-svn: 162070
* Fix misaligned DeclGroup allocation.Richard Smith2012-08-171-1/+5
| | | | llvm-svn: 162069
* Don't form a null reference when checking for validity of an anonymousRichard Smith2012-08-171-2/+1
| | | | | | | elaborated type specifier in template instantiation: such a specifier is always valid because it must be specified within the definition of the type. llvm-svn: 162068
* Add support for "type safety" attributes that allow checking that 'void *'Dmitri Gribenko2012-08-1717-6/+1551
| | | | | | | | | | | | | | function arguments and arguments for variadic functions are of a particular type which is determined by some other argument to the same function call. Usecases include: * MPI library implementations, where these attributes enable checking that buffer type matches the passed MPI_Datatype; * for HDF5 library there is a similar usecase as MPI; * checking types of variadic functions' arguments for functions like fcntl() and ioctl(). llvm-svn: 162067
* Add some caching here for the builtin types.Eric Christopher2012-08-162-15/+30
| | | | | | rdar://12117935 llvm-svn: 162066
* Remove FIXME, the constraints contain more options than theEric Christopher2012-08-161-1/+0
| | | | | | current available documentation. llvm-svn: 162065
* Add a missing 'break' to ensure that we reject inline assemblyEric Christopher2012-08-162-1/+8
| | | | | | constraints we don't recognize. llvm-svn: 162064
* Random string removal.Eric Christopher2012-08-161-1/+1
| | | | llvm-svn: 162063
* Make isa part of objc_object at metadata generation time.Eric Christopher2012-08-161-6/+8
| | | | | | Noticed on inspection. llvm-svn: 162062
* Add ADD and SUB to the predicable ARM instructions.Jakob Stoklund Olesen2012-08-166-21/+86
| | | | | | | | | | It is not my plan to duplicate the entire ARM instruction set with predicated versions. We need a way of representing predicated instructions in SSA form without requiring a separate opcode. Then the pseudo-instructions can go away. llvm-svn: 162061
* Handle ARM MOVCC optimization in PeepholeOptimizer.Jakob Stoklund Olesen2012-08-165-53/+73
| | | | | | Use the target independent select analysis hooks. llvm-svn: 162060
* Add an MCID::Select flag and TII hooks for optimizing selects.Jakob Stoklund Olesen2012-08-168-16/+89
| | | | | | | | | | | | Select instructions pick one of two virtual registers based on a condition, like x86 cmov. On targets like ARM that support predication, selects can sometimes be eliminated by predicating the instruction defining one of the operands. Teach PeepholeOptimizer to recognize select instructions, and ask the target to optimize them. llvm-svn: 162059
* Fix misaligned allocation of TemplateParameterList objects.Richard Smith2012-08-161-1/+2
| | | | llvm-svn: 162056
OpenPOWER on IntegriCloud