summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* SimplifyCFG now predicts some conditional branches to true or false ↵Pete Cooper2011-12-172-0/+194
| | | | | | | | | | | | | depending on previous branch on same comparison operands. For example, if (a == b) { if (a > b) // this is false Fixes some of the issues on <rdar://problem/10554090> llvm-svn: 146822
* Deleting the json-bench-test until I understand why it is flaky.Manuel Klimek2011-12-171-5/+0
| | | | llvm-svn: 146821
* Refactor SerializeDiagnosticsPrinter to using DiagnosticRenderer. This ↵Ted Kremenek2011-12-176-77/+222
| | | | | | | | | | gives us comparative diagnostics to TextDiagnosticPrinter. This certainly can be cleaned up a bit. llvm-svn: 146820
* Refactor 'TextDiagnostic' to have a parent class 'DiagnosticRenderer' which ↵Ted Kremenek2011-12-175-320/+471
| | | | | | | | | | | | handles the policy of how diagnostics are lowered/rendered, while TextDiagnostic handles the actual pretty-printing. This is a first part of reworking SerializedDiagnosticPrinter to use the same inclusion-stack/macro-expansion logic as TextDiagnostic. llvm-svn: 146819
* [PCH] Fix bug where we failed to update an identifier for a single tokenArgyrios Kyrtzidis2011-12-172-0/+31
| | | | | | | | macro expansion. rdar://10588825 llvm-svn: 146818
* [PCH] In ASTReader::FinishedDeserializing fully load the interesting decls,Argyrios Kyrtzidis2011-12-171-0/+9
| | | | | | | | | including deserializing their bodies, so that any other declarations that get referenced in the body will be fully deserialized by the time we pass them to the consumer. Could not reduce to a test case unfortunately. rdar://10587158. llvm-svn: 146817
* Add a sanity check in the Redeclarable::redecl_iterator to avoid infinite loopArgyrios Kyrtzidis2011-12-171-1/+13
| | | | | | | | when we formed an invalid redeclaration chain due to a bug. Thanks to Doug for the hint! llvm-svn: 146816
* In Parser::SkipUntil do not stop at '@' unconditionally.Argyrios Kyrtzidis2011-12-173-16/+6
| | | | | | | | | | | | | | | Stopping at '@' was originally intended to avoid skipping an '@' at the @interface context when doing parser recovery, but we should not stop at all '@' tokens because they may be part of expressions (e.g. in @"string", @selector(), etc.), so in most cases we will want to skip them. This commit caused 'test/Parser/method-def-in-class.m' to fail for the cases where we tried to recover from unmatched angle bracket but IMO it is not a big deal to not have good recovery from such broken code and the way we did recovery would not always work anyway (e.g. if there was '@' in an expression). The case that rdar://7029784 is about still passes. llvm-svn: 146815
* After late parsing an objc method, make sure there are no leftover cached ↵Argyrios Kyrtzidis2011-12-171-2/+19
| | | | | | | | | | | | | | | tokens, because the memory associated with them is going to get released. We also don't want them to affect later parsing. (We do the same for C++ inline methods.) The underlying cause for the leftover tokens is going to be addressed in the next commit. Couldn't get a test case for the crash though. rdar://10583033. llvm-svn: 146814
* Add a missing check before trying to evaluate a temporary. PR11595.Eli Friedman2011-12-172-0/+9
| | | | llvm-svn: 146813
* Fixed code rot pointed out by Jim.Johnny Chen2011-12-173-6/+4
| | | | | | SBThread::GetStopReasonDataCount/GetStopReasonDataAtIndex() need to handle eStopReasonWatchpoint. llvm-svn: 146812
* Added a version of the LLVM/Clang checkout andSean Callanan2011-12-171-0/+73
| | | | | | | build script that applies any local patches to LLVM/Clang. llvm-svn: 146811
* Fix _mm_permute_ps and _mm256_permute_ps AVX intrinsics to use "I" (ICE)Chad Rosier2011-12-172-12/+8
| | | | | | | markings. Fix avxintrin.h to take them into account. Part of rdar://10595450 llvm-svn: 146810
* Updating Xcode project version numbers for LLDB-96Sean Callanan2011-12-173-22/+22
| | | | | | and debugserver-156. llvm-svn: 146808
* Revert r146797, which was a partial revert of r146791; It was correct in theChad Rosier2011-12-172-12/+8
| | | | | | first place. The permutevar_* (note the *var*) intrinsics use ymm/mem. llvm-svn: 146807
* Add the ability to capture the return value in a thread's stop info, and ↵Jim Ingham2011-12-1722-40/+316
| | | | | | | | | | | | | print it as part of the thread format output. Currently this is only done for the ThreadPlanStepOut. Add a convenience API ABI::GetReturnValueObject. Change the ValueObject::EvaluationPoint to BE an ExecutionContextScope, rather than trying to hand out one of its subsidiary object's pointers. That way this will always be good. llvm-svn: 146806
* Fix a CPSR liveness tracking bug introduced when I converted IT block to bundle.Evan Cheng2011-12-172-4/+35
| | | | llvm-svn: 146805
* Fix _mm256_extractf128_* AVX intrinsics to use "I" (ICE) markings. FixChad Rosier2011-12-172-18/+12
| | | | | | | avxintrin.h to take them into account. Part of rdar://10595450 llvm-svn: 146804
* Refactor code used in InstCombine::FoldAndOfICmps to new file.Pete Cooper2011-12-174-72/+175
| | | | | | This will be used by SimplifyCfg in a later commit. llvm-svn: 146803
* Modified LLDB to be able to handle our updated __apple_types accelerator tablesGreg Clayton2011-12-171-47/+39
| | | | | | which have the dwarf DIE tag (DW_TAG_XXX enum) and TypeFlags for each type. llvm-svn: 146802
* Add back the MC bits of 126425. Original patch by Nathan Jeffords. I added theRafael Espindola2011-12-1712-4/+77
| | | | | | asm parsing and testcase. llvm-svn: 146801
* Make sure that the lower bits on the VSELECT condition are properly set.Lang Hames2011-12-172-27/+40
| | | | llvm-svn: 146800
* I have added a new patch to LLVM that makes theSean Callanan2011-12-171-0/+199
| | | | | | | | | | | enhanced disassembler classify disassemblers by target triple (as a string) rather than just by the architecture component of the triple. This fixes a problem where different variants of the Thumb instruction set were lumped into the same hash bucket. llvm-svn: 146799
* Remove an unnecessary #include.Jim Ingham2011-12-171-1/+0
| | | | llvm-svn: 146798
* Partial revert of r146791; vpermilps/vpermilpd instructions accepts ↵Chad Rosier2011-12-172-8/+12
| | | | | | ymm/mem/imm8. llvm-svn: 146797
* Remove a non-gcc-compatible extension that would apply attributes on ↵Eli Friedman2011-12-1710-10/+61
| | | | | | declarations without a declarator to structs. Add a warning for ignored attributes. Patch by Michael Han. llvm-svn: 146796
* Add a triple to this test to hopefully get it passing on i386-freebsd.Eric Christopher2011-12-171-1/+1
| | | | llvm-svn: 146795
* [analyzer] Fixup for r146793. Add tests for atol and atoll.Anna Zaks2011-12-171-1/+12
| | | | llvm-svn: 146794
* [analyzer] Add support for taint flowing through a function (atoi).Anna Zaks2011-12-172-43/+156
| | | | | | | | | | Check if the input parameters are tainted (or point to tainted data) on a checkPreStmt<CallExpr>. If the output should be tainted, record it in the state. On post visit (checkPostStmt<CallExpr>), use the state to make decisions (in addition to the existing logic). Use this logic for atoi and fscanf. llvm-svn: 146793
* [analyzer] Minor: Simplify & assert.Anna Zaks2011-12-172-3/+6
| | | | llvm-svn: 146792
* Fix _mm256_round_pd, _mm256_round_ps, _mm_permute_pd and _mm256_permute_pd AVXChad Rosier2011-12-173-26/+18
| | | | | | | | intrinsics to use "I" (ICE) markings. Fix avxintrin.h to take them into account. Part of rdar://10595450 llvm-svn: 146791
* Preserve more memory operands in ARMExpandPseudo.Jakob Stoklund Olesen2011-12-171-0/+4
| | | | | | I don't think this affects anything but verbose assembly. llvm-svn: 146787
* The powers that be have decided that LLVM IR should now support 16-bitDan Gohman2011-12-1718-57/+124
| | | | | | | | "half precision" floating-point with a first-class type. This patch adds basic IR support (but not codegen support). llvm-svn: 146786
* When recursing for the original size of a type, stop if we are at aEric Christopher2011-12-162-1/+179
| | | | | | | | | pointer or a reference type - we actually just want the size of the pointer then for that. Fixes rdar://10335756 llvm-svn: 146785
* Resolve part of a fixme and add a new one.Eric Christopher2011-12-161-2/+5
| | | | llvm-svn: 146784
* Add a fixme here.Eric Christopher2011-12-161-0/+1
| | | | llvm-svn: 146783
* Fix spacing.Eric Christopher2011-12-161-3/+3
| | | | llvm-svn: 146782
* Update documentation.Eric Christopher2011-12-161-0/+1
| | | | llvm-svn: 146781
* Extraneous whitespace and 80-col.Eric Christopher2011-12-161-3/+2
| | | | llvm-svn: 146780
* When in a limited debug information situation if we can find the originalEric Christopher2011-12-163-9/+30
| | | | | | | | | declaration for the type then go ahead and use that, it's still smaller than creating an all new derived type. Part of rdar://10335756 and others. llvm-svn: 146779
* Start down the path of getting clang to internally agree on structs versusEric Christopher2011-12-162-12/+38
| | | | | | | | classes. Part of rdar://10520586 and a couple others. llvm-svn: 146778
* Make the objc-dynamic-value test a little trickier (still passes) and test ↵Jim Ingham2011-12-162-1/+11
| | | | | | the GetDynamicValue API. llvm-svn: 146777
* http://llvm.org/bugs/show_bug.cgi?id=11588Johnny Chen2011-12-1610-5/+219
| | | | | | | | | | | | | valobj.AddressOf() returns None when an address is expected in a SyntheticChildrenProvider Patch from Enrico Granata: The problem was that the frozen object created by the expression parser was a copy of the contents of the StgClosure, rather than a pointer to it. Thus, the expression parser was correctly computing the result of the arithmetic&cast operation along with its address, but only saving it in the live object. This meant that the frozen copy acted as an address-less variable, hence the problem. The fix attached to this email lets the expression parser store the "live address" in the frozen copy of the address when the object is built without a valid address of its own. Doing so, along with delegating ValueObjectConstResult to calculate its own address when necessary, solves the issue. I have also added a new test case to check for regressions in this area, and checked that existing test cases pass correctly. llvm-svn: 146768
* Fix off-by-one error in bucket sort.Jakob Stoklund Olesen2011-12-162-1/+27
| | | | | | | | | The bad sorting caused a misaligned basic block when building 176.vpr in ARM mode. <rdar://problem/10594653> llvm-svn: 146767
* Fix an inconsistency in the syntactic form of InitListExpr in case of ↵Nicola Gigante2011-12-161-6/+37
| | | | | | initialization that involves a ConstructorConversion llvm-svn: 146766
* Don't allow #include (and its friends #import, #include_next andRichard Smith2011-12-164-3/+50
| | | | | | | | #__include_macros) in the arguments of a function-style macro. Directives in the arguments of such macros have undefined behaviour, and GCC does not correctly support these cases. In some situations, this can lead to better diagnostics. llvm-svn: 146765
* Add missing header changeDouglas Gregor2011-12-161-1/+2
| | | | llvm-svn: 146764
* Make sure we're always setting the previous declaration of an ObjCInterfaceDeclDouglas Gregor2011-12-162-10/+11
| | | | llvm-svn: 146763
* Add the value of "suitably aligned" from the C++11 standard to Basic/TargetInfo.Nick Lewycky2011-12-163-1/+13
| | | | | | | | This is equal to alignof(std::max_align_t) on the platform and equal to the alignment provided by malloc. (Platform owners please double-check your platform's value.) llvm-svn: 146762
* Fix 80-column violation and whitespace. No functionality change.Nick Lewycky2011-12-161-2/+3
| | | | llvm-svn: 146761
OpenPOWER on IntegriCloud