summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix speling and 80-col.Jakob Stoklund Olesen2011-12-141-4/+3
| | | | llvm-svn: 146575
* [analyzer] Re-enable the test which was failing on one of the bots.Anna Zaks2011-12-141-0/+46
| | | | | | I cannot reproduce the failures neither on my machine nor on the same buildbot machine (with the clang binary built on it). Let's see if it fails again.. llvm-svn: 146574
* Add support for local dynamic TLS model in LowerGlobalTLSAddress. Direct objectAkira Hatanaka2011-12-146-6/+54
| | | | | | | emission is not supported yet, but a patch that adds the support should follow soon. llvm-svn: 146572
* Fix copy/pasto that skipped the 'modify' step.Jim Grosbach2011-12-141-4/+4
| | | | llvm-svn: 146571
* ARM/Thumb2 mov vs. mvn alias goes both ways.Jim Grosbach2011-12-142-0/+4
| | | | llvm-svn: 146570
* VFP2 is required for FP loads. Noticed by inspection.Chad Rosier2011-12-141-0/+2
| | | | llvm-svn: 146569
* Tidy up.Chad Rosier2011-12-141-1/+2
| | | | llvm-svn: 146568
* ARM/Thumb2 'cmp rn, #imm' alias to cmn.Jim Grosbach2011-12-144-2/+15
| | | | | | | | | | When 'cmp rn #imm' doesn't match due to the immediate not being representable, but 'cmn rn, #-imm' does match, use the latter in place of the former, as it's equivalent. rdar://10552389 llvm-svn: 146567
* Fix 80-column violation and extraneous brackets.Chad Rosier2011-12-141-8/+9
| | | | llvm-svn: 146566
* Fix obvious error in _mm_test_all_zeros. PR11565.Bob Wilson2011-12-141-1/+1
| | | | | | Patch by Mathias Gaunard! llvm-svn: 146565
* Eliminate the vistigial ObjCClassDecl::ObjCClassRef, and inline itsDouglas Gregor2011-12-147-54/+35
| | | | | | | members into ObjCClassDecl, saving ourselves one pointer per forward declaration. llvm-svn: 146564
* When name lookup comes across a declaration that is in a module thatDouglas Gregor2011-12-146-29/+116
| | | | | | | is not visible, look for any previous declarations of that entity that might be visible. llvm-svn: 146563
* r146430 lost some compile-time performance on ↵Matt Beaumont-Gay2011-12-142-20/+26
| | | | | | MultiSource/Benchmarks/MiBench/security-rijndael; this gets most of it back. llvm-svn: 146562
* Vectors are not aggregate types (see isAggregateType).Duncan Sands2011-12-141-3/+3
| | | | llvm-svn: 146561
* Allow to run the Polly preopt passes with -O0Tobias Grosser2011-12-142-30/+49
| | | | | | | | | | | To extract a preoptimized LLVM-IR file from a C-file run: clang -Xclang -load -Xclang LLVMPolly.so -O0 -mllvm -polly file.c -S -emit-llvm On the generated file you can directly run passes such as: 'opt -view-scops file.s' llvm-svn: 146560
* www: Enable mp4 version of the developer meeting talkTobias Grosser2011-12-141-6/+3
| | | | llvm-svn: 146559
* Scheduler: Try to maximize the band depthTobias Grosser2011-12-141-0/+1
| | | | | | | | | | | | | | | | Previously the scheduler was splitting bands at the level at which it detected that the splitting of the band is necessary. This may introduce an additional level of bands, that can be avoided by backtracking and splitting on a higher level. Additional splits reduce the number of loops that can be tiled, such that avoiding splits and maximizing the band depth seems preferable. As a first data point we looked at 2mm and 3mm from the polybench test suite. For both maximizing the tilable bands results in a significant (5-10x) performance improvement. This patch enables the isl scheduler option to maximize the band depth. llvm-svn: 146557
* Scheduler: Set maximal constant termTobias Grosser2011-12-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | If larger coefficients appear as part of the input dependences, the schedule calculation can take a very long time. We observed that the main overhead in this calculation is due to optimizing the constant coefficients. They are misused to increase locality by merging several unrelated dimensions into a single dimension. This unwanted optimization increases the complexity of the generated code and furthermore slows it down. We use a new isl scheduler option to bound the values in the constant dimension by a user defined value (20 in our case). If the right value is choosen, costly overoptimization is prevented. This solution works, but requires a specific (here almost randomly choosen) value by which the constants are bound. For the moment, this is our best solution, but we hope to to find a more generic one later on. After these patch the extremly long compile time for simple kernels like 2mm or 3mm is reduced to a reasonable amount of time (Not more than a couple of seconds even in debug mode). llvm-svn: 146556
* Update islTobias Grosser2011-12-141-1/+1
| | | | | | This updates bringes new options for the isl scheduler. llvm-svn: 146555
* Enable stack protectors by default for iOS. <rdar://problem/8836680>Bob Wilson2011-12-142-4/+2
| | | | llvm-svn: 146552
* On Mac OS X the Objective-C runtime (libobjc) has many criticalJason Molenda2011-12-144-4/+101
| | | | | | | | | | | | | | | | | | | | | dispatch functions that are implemented in hand-written assembly. There is also hand-written eh_frame instructions for unwinding from these functions. Normally we don't use eh_frame instructions for the currently executing function, prefering the assembly instruction profiling method. But in these hand-written dispatch functions, the profiling is doomed and we should use the eh_frame instructions. Unfortunately there's no easy way to flag/extend the eh_frame/debug_frame sections to annotate if the unwind instructions are accurate at all addresses ("asynchronous") or if they are only accurate at locations that can throw an exception ("synchronous" and the normal case for gcc/clang generated eh_frame/debug_frame CFI). <rdar://problem/10508134> llvm-svn: 146551
* llvm/lib/CodeGen: Fix cmake build since r146542.NAKAMURA Takumi2011-12-141-0/+1
| | | | llvm-svn: 146550
* Fix a stupid typo in MemDepPrinter.Eli Friedman2011-12-141-1/+1
| | | | llvm-svn: 146549
* Add missing cases to SDNode::getOperationName(). Patch by Micah Villmow.Eli Friedman2011-12-141-0/+5
| | | | llvm-svn: 146548
* Allow target to specify register output dependency. Still default to one.Evan Cheng2011-12-142-1/+17
| | | | llvm-svn: 146547
* Revert r146481 to review possible miscompilations.Bill Wendling2011-12-141-33/+6
| | | | llvm-svn: 146546
* Disable to review some failures.Bill Wendling2011-12-141-1/+2
| | | | llvm-svn: 146545
* Switch test over to using -verify instead of using grep. PR11552.Eli Friedman2011-12-141-4/+2
| | | | llvm-svn: 146544
* ARM assembler support for the target-specific .req directive.Jim Grosbach2011-12-142-1/+78
| | | | | | rdar://10549683 llvm-svn: 146543
* - Add MachineInstrBundle.h and MachineInstrBundle.cpp. This includes a functionEvan Cheng2011-12-1428-169/+653
| | | | | | | | | | to finalize MI bundles (i.e. add BUNDLE instruction and computing register def and use lists of the BUNDLE instruction) and a pass to unpack bundles. - Teach more of MachineBasic and MachineInstr methods to be bundle aware. - Switch Thumb2 IT block to MI bundles and delete the hazard recognizer hack to prevent IT blocks from being broken apart. llvm-svn: 146542
* [analyzer] Revert the taint test, which is failing on one of the bots for ↵Anna Zaks2011-12-141-46/+0
| | | | | | time being. llvm-svn: 146541
* http://llvm.org/bugs/show_bug.cgi?id=11560 lldb::SBTarget::FindFirstType ↵Johnny Chen2011-12-144-4/+12
| | | | | | | | crashes when passed None Add null checks to several functions. Plus add test scenario for passing None to SBTarget.FindFirstType(None) and friends. llvm-svn: 146540
* Print out the breakpoint description only if self.TraceOn() is True.Johnny Chen2011-12-141-1/+2
| | | | llvm-svn: 146539
* Add newline at EOF.Chad Rosier2011-12-141-1/+1
| | | | llvm-svn: 146538
* This commit is the result of a general audit ofSean Callanan2011-12-144-10/+10
| | | | | | | | | | | | | | the expression parser to locate instances where dyn_cast<>() and isa<>() are used on types, and replace them with getAs<>() as appropriate. The difference is that dyn_cast<>() and isa<>() are essentially LLVM/Clang's equivalent of RTTI -- that is, they try to downcast the object and return NULL if they cannot -- but getAs<>() can traverse typedefs to perform a semantic cast. llvm-svn: 146537
* [analyzer] Treat stdin as a source of taint.Anna Zaks2011-12-142-17/+62
| | | | | | | | Some of the test cases do not currently work because the analyzer core does not seem to call checkers for pre/post DeclRefExpr visits. (Opened radar://10573500. To be fixed later on.) llvm-svn: 146536
* [analyzer] Minor refactor to addTaint.Anna Zaks2011-12-142-2/+12
| | | | llvm-svn: 146535
* DW_AT_virtuality is also defined to be constant, not flag.Nick Lewycky2011-12-141-2/+2
| | | | llvm-svn: 146534
* [analyzer] Mark output of fscanf and fopen as tainted.Anna Zaks2011-12-142-1/+65
| | | | llvm-svn: 146533
* [analyzer] Mark getenv output as tainted.Anna Zaks2011-12-143-2/+20
| | | | | | Also, allow adding taint to a region (not only a symbolic value). llvm-svn: 146532
* Per discussion on the list, remove BitcodeVerify pass to reimplement as a ↵Chad Rosier2011-12-143-61/+2
| | | | | | free function. llvm-svn: 146531
* Per discussion on the list, remove BitcodeVerify pass to reimplement as a ↵Chad Rosier2011-12-148-21/+0
| | | | | | free function. llvm-svn: 146530
* [asan] insert __asan_init into ".preinit_array" section. Linux-only.Kostya Serebryany2011-12-142-2/+8
| | | | llvm-svn: 146529
* [asan] fix the test runner to detect build breakages; add a test for -pieKostya Serebryany2011-12-141-3/+10
| | | | llvm-svn: 146528
* [asan] remove .preinit_array from the compiler module (it breaks .so ↵Kostya Serebryany2011-12-141-16/+0
| | | | | | builds). This should be done in the run-time. llvm-svn: 146527
* [asan] fix some more format warnings in sysinfo/sysinfo.ccKostya Serebryany2011-12-131-8/+13
| | | | llvm-svn: 146526
* Make the diagnostic message more consistant. Update the type comparison toRichard Trieu2011-12-133-14/+19
| | | | | | | handle non-pointer types. This is for the extra info printed when function types are compared. llvm-svn: 146525
* llvm-nm: refactor in order to support reading files from stdin.Michael J. Spencer2011-12-131-31/+40
| | | | llvm-svn: 146524
* Support/FileSystem: Add file_magic and move a vew clients over to it.Michael J. Spencer2011-12-134-19/+172
| | | | llvm-svn: 146523
* Support/Program: Make Change<stream>ToBinary return error_code.Michael J. Spencer2011-12-135-18/+27
| | | | llvm-svn: 146522
OpenPOWER on IntegriCloud