summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* LICM: Do not loose alignment on promotionTobias Grosser2011-07-062-8/+56
| | | | | | | | The promotion code lost any alignment information, when hoisting loads and stores out of the loop. This lead to incorrect aligned memory accesses. We now use the largest alignment we can prove to be correct. llvm-svn: 134520
* Remove unnecessary 'import' statement.Johnny Chen2011-07-061-1/+0
| | | | llvm-svn: 134519
* Fixed an issue that was causing us to crash when evaluating expressions forGreg Clayton2011-07-062-12/+19
| | | | | | | | | objective C or C++ methods when "self" or "this" were in scope, but had invalid locations in a DWARF location list. The lack of a valid value caused us to use an invalid type value and then we tried to import that invalid value and we would crash. llvm-svn: 134518
* Add documenation about "branch_weight" metadata and __builtin_expect instructionJakub Staszak2011-07-062-0/+168
| | | | llvm-svn: 134517
* Introduce "expect" intrinsic instructions.Jakub Staszak2011-07-0615-1/+678
| | | | llvm-svn: 134516
* Don't try to type-check a copy construction of an exceptionDouglas Gregor2011-07-062-1/+18
| | | | | | | declaration with dependent type. Fixes PR10232 / <rdar://problem/9700653>. llvm-svn: 134515
* Update docs to remove reference to OverloadedFunctionDecl and replace it ↵Jonathan D. Turner2011-07-061-4/+4
| | | | | | with DeclContext::lookup_result. llvm-svn: 134514
* ScopLib: Add missing includeTobias Grosser2011-07-061-0/+1
| | | | llvm-svn: 134513
* pollycc: Fix error message if PoCC/Pluto are not availableTobias Grosser2011-07-061-4/+5
| | | | llvm-svn: 134512
* Update MC/ELF/relocation.s with change to X86 PUSH64i8 in r134501.Kevin Enderby2011-07-061-5/+5
| | | | llvm-svn: 134511
* Set the EvaluationPoint's m_thread_id to the RIGHT invalid define...Jim Ingham2011-07-061-3/+2
| | | | llvm-svn: 134505
* Keep track of when "unrecoverable" errors occur, then allowDouglas Gregor2011-07-065-5/+32
| | | | | | | clang_saveTranslationUnit() to save a PCH file if the only errors it contains are recoverable errors. Fixes <rdar://problem/9727804>. llvm-svn: 134503
* Changed the X86 PUSH64i8 record to use the i64i8imm ParserMatchClass so that aKevin Enderby2011-07-062-1/+7
| | | | | | push with a small constant produces a 2-byte push. llvm-svn: 134501
* Allow tagless builds and fix debug build configuration.David Greene2011-07-061-4/+18
| | | | llvm-svn: 134498
* Made the string representation for a SBValue return what "frame variable" Greg Clayton2011-07-066-45/+32
| | | | | | | | | | | | would return instead of a less than helpful "name: '%s'" description. Make sure that when we ask for the error from a ValueObject object we first update the value if needed. Cleaned up some SB functions to use internal functions and not re-call through the public API when possible. llvm-svn: 134497
* SmallVectorize a critical vector.Benjamin Kramer2011-07-061-1/+1
| | | | | | | The small number of elements was determined by taking the median file length in clang+llvm and /usr/include on OS X with xcode installed. llvm-svn: 134496
* libclang: Allow callers of clang_saveTranslationUnit() to distinguishDouglas Gregor2011-07-065-13/+73
| | | | | | | between different classes of errors. Addresses most of <rdar://problem/9660328>. llvm-svn: 134495
* Build up statistics about the work done for analysis based warnings.Chandler Carruth2011-07-068-17/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Special detail is added for uninitialized variable analysis as this has serious performance problems than need to be tracked. Computing some of this data is expensive, for example walking the CFG to determine its size. To avoid doing that unless the stats data is going to be used, we thread a bit into the Sema object to track whether detailed stats should be collected or not. This bit is used to avoid computations whereever the computations are likely to be more expensive than checking the state of the flag. Thus, counters are in some cases unconditionally updated, but the more expensive (and less frequent) aggregation steps are skipped. With this patch, we're able to see that for 'gcc.c': *** Analysis Based Warnings Stats: 232 functions analyzed (0 w/o CFGs). 7151 CFG blocks built. 30 average CFG blocks per function. 1167 max CFG blocks per function. 163 functions analyzed for uninitialiazed variables 640 variables analyzed. 3 average variables per function. 94 max variables per function. 96409 block visits. 591 average block visits per function. 61546 max block visits per function. And for the reduced testcase in PR10183: *** Analysis Based Warnings Stats: 98 functions analyzed (0 w/o CFGs). 8526 CFG blocks built. 87 average CFG blocks per function. 7277 max CFG blocks per function. 68 functions analyzed for uninitialiazed variables 1359 variables analyzed. 19 average variables per function. 1196 max variables per function. 2540494 block visits. 37360 average block visits per function. 2536495 max block visits per function. That last number is the somewhat scary one that indicates the problem in PR10183. llvm-svn: 134494
* Teach the static analyzer's interpretation of Cocoa conventions toDouglas Gregor2011-07-064-8/+39
| | | | | | | obey the objc_method_family attribute when provided. Fixes <rdar://problem/9726279>. llvm-svn: 134493
* Fixed some format namesEnrico Granata2011-07-061-4/+4
| | | | llvm-svn: 134492
* Use attributes from the definition (if available) whenRafael Espindola2011-07-063-3/+24
| | | | | | | | instantiating functions. Fixes PR10272. llvm-svn: 134491
* Fix C&P errorJoerg Sonnenberger2011-07-061-1/+1
| | | | llvm-svn: 134490
* When tree-transforming an expression sequence, always flag expandedJohn McCall2011-07-062-5/+18
| | | | | | | | | | variadic argument pack expansions as having changed, rather than doing it for each changed expansion, which leaves out zero-argument packs with catastrophic consequences. Fixes PR10260. llvm-svn: 134483
* Fixed enum types can be complete without actually being valid to useJohn McCall2011-07-065-7/+54
| | | | | | | as scope specifiers; diagnose the attempt, rather than letting it go to an assert. The rest of PR10264. llvm-svn: 134479
* Properly protect colons when parsing a nested-name-specifier as partJohn McCall2011-07-062-11/+27
| | | | | | | of an enum specifier in dialects which permit fixed underlying types. Fixes the rejects-valid part of PR10264. llvm-svn: 134468
* Fixed some issues with ARM backtraces by not processing any push/pop Greg Clayton2011-07-0612-230/+422
| | | | | | | | | | | | | | instructions if they are conditional. Also fixed issues where the PC wasn't getting bit zero stripped for ARM targets when a stack frame was thumb. We now properly call through the GetOpcodeLoadAddress() functions to make sure the addresses are properly stripped for any targets that may decorate up their addresses. We now don't pass the SIGSTOP signals along. We can revisit this soon, but currently this was interfering with debugging some older ARM targets that don't have vCont support in the GDB server. llvm-svn: 134461
* Improve the Python bindings for libclang in a few ways, from EliDouglas Gregor2011-07-067-12/+44
| | | | | | | | | | | | | | | | | Bendersky. Specifically: * Implemented a new function in libclang: clang_isAttribute * Fixing TranslationUnit.get_includes to only go through the argument * buffer when it contains something. This fixed a crash on Windows * clang_getFileName returns CXString, not char*. Made appropriate * fixes in cindex.py - now the relevant tests pass and we can see the * full locations correctly again (previously there was garbage in * place of the file name) * Exposed clang_getCursorDisplayName to the python bindings llvm-svn: 134460
* Somehow the -fgnu-runtime option itself got lost in all that shuffling.John McCall2011-07-062-2/+9
| | | | | | Restore it. llvm-svn: 134459
* new syntax for summary strings:Enrico Granata2011-07-0614-483/+873
| | | | | | | | | - ${*expr} now simply means to dereference expr before actually using it - bitfields, array ranges and pointer ranges now work in a (hopefully) more natural and language-compliant way a new class TypeHierarchyNavigator replicates the behavior of the FormatManager in going through type hierarchies when one-lining summary strings, children's summaries can be used as well as values llvm-svn: 134458
* Remove the AsmWriterEmitter (unused) feature that rely on TargetSubtargetInfo.Evan Cheng2011-07-063-151/+6
| | | | llvm-svn: 134457
* Call objc_terminate() instead of abort() when a cleanup throws anJohn McCall2011-07-069-4/+68
| | | | | | | exception in Objective-C; in Objective-C++ we still use std::terminate(). This is only available in very recent runtimes. llvm-svn: 134456
* Missing header from last commit; accidental change.John McCall2011-07-062-1/+39
| | | | llvm-svn: 134455
* Added a missing case label.Fariborz Jahanian2011-07-061-0/+1
| | | | llvm-svn: 134454
* Change the driver's logic about Objective-C runtimes: abstract out aJohn McCall2011-07-0655-128/+171
| | | | | | | | | | | | structure to hold inferred information, then propagate each invididual bit down to -cc1. Separate the bits of "supports weak" and "has a native ARC runtime"; make the latter a CodeGenOption. The tool chain is still driving this decision, because it's the place that has the required deployment target information on Darwin, but at least it's better-factored now. llvm-svn: 134453
* Add a more verbose docstring for SBThread.h.Johnny Chen2011-07-061-37/+75
| | | | llvm-svn: 134452
* Add swig docstrings for SBBlock.h.Johnny Chen2011-07-051-0/+38
| | | | llvm-svn: 134451
* objc-arc: enforce performSelector rules in rejecting retaining selectorsFariborz Jahanian2011-07-057-1/+132
| | | | | | | passed to it, and unknown selectors causing potential leak. // rdar://9659270 llvm-svn: 134449
* ScheduleOpt: Fix some bugsTobias Grosser2011-07-051-4/+7
| | | | | | | isl changed a function name, we did not properly initialize some variables and we freed an isl_ctx object. llvm-svn: 134448
* Revert r134366 and add an explicit triple to make this test host-independent.Dan Gohman2011-07-051-4/+4
| | | | llvm-svn: 134447
* Add swig docstrings for SBModule.h, plus ifndef the SBModule::GetUUIDBytes() ↵Johnny Chen2011-07-053-8/+102
| | | | | | | | API out if swig. Fix typos in the comment for Module.h. llvm-svn: 134446
* Add the ObjC ARC optimization passes manually, now that they're notDan Gohman2011-07-053-7/+45
| | | | | | hardwired into the default pass list. llvm-svn: 134445
* Remove the ObjC ARC passes from the default optimization list, and addDan Gohman2011-07-052-7/+9
| | | | | | extension points to be used by clang. llvm-svn: 134444
* Remove unused member of Builtin::Info.Eli Friedman2011-07-053-24/+15
| | | | llvm-svn: 134443
* Testcase for r134441.Devang Patel2011-07-051-0/+35
| | | | llvm-svn: 134442
* Preserve debug loc.Devang Patel2011-07-052-2/+2
| | | | llvm-svn: 134441
* Speculatively revert r134431.Devang Patel2011-07-051-1/+0
| | | | llvm-svn: 134440
* Use memcmp.Benjamin Kramer2011-07-051-3/+1
| | | | llvm-svn: 134439
* Drop "soft" argument that would be considered as file argument by cc1.Joerg Sonnenberger2011-07-051-1/+0
| | | | llvm-svn: 134438
* Add a more verbose docstring to the SBSymbolContext API class.Johnny Chen2011-07-052-4/+44
| | | | | | Add doxygen/docstring to SBProcess.RemoteAttachToProcessWithID() API method. llvm-svn: 134437
* Really fix typo :-(Rafael Espindola2011-07-051-1/+1
| | | | llvm-svn: 134436
OpenPOWER on IntegriCloud