summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* www/memaccess: Fix forgotten typoTobias Grosser2011-07-051-1/+1
| | | | llvm-svn: 134435
* CodeGen: Adapt to change of PHI operand storageTobias Grosser2011-07-051-3/+0
| | | | | | | Commit 133435 "Change how PHINodes store their operands" broke Polly. Fix this breakage by adapting to the changes in the commit. llvm-svn: 134434
* Fix typo.Rafael Espindola2011-07-051-2/+2
| | | | llvm-svn: 134433
* test: Do not pipe the .ll file into optTobias Grosser2011-07-0536-60/+60
| | | | | | | The construct '< %s' complicates debugging with gdb --args as the content of %s is interpreted as gdb input. llvm-svn: 134432
* Clear debug loc while updating insert point.Devang Patel2011-07-051-0/+1
| | | | llvm-svn: 134431
* By default mkstemp() creates a temporary file with mode 0600, but the modeChad Rosier2011-07-051-0/+3
| | | | | | | | used for open is 0666. Therefore, add the necessary permission bits for consistency. rdar://8621462 llvm-svn: 134430
* www: Updating memaccess documentationRaghesh Aloor2011-07-052-137/+81
| | | | | | | This is a complete rewrite to memaccess.html file. This removed some unwanted html tags. llvm-svn: 134429
* Break infinite loop when the Hopfield network oscillates.Jakob Stoklund Olesen2011-07-051-8/+6
| | | | | | | | | | This is impossible in theory, I can prove it. In practice, our near-zero threshold can cause the network to oscillate between equally good solutions. <rdar://problem/9720596> llvm-svn: 134428
* Compare all 4 bytes of the header.Rafael Espindola2011-07-051-2/+3
| | | | llvm-svn: 134427
* Look through parenthesized declarators when determining whether anDouglas Gregor2011-07-052-1/+9
| | | | | | | instantiated function template was written with a prototype or via some kind of typedef. Fixes PR10273 / <rdar://problem/9723679>. llvm-svn: 134426
* Hook up mipsel-netbsd and mipsel-freebsd for OS specific handling.Joerg Sonnenberger2011-07-051-4/+11
| | | | llvm-svn: 134425
OpenPOWER on IntegriCloud