summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* A quick fix to PR17877 that was introduced by r194188 ↵Faisal Vali2013-11-122-4/+40
| | | | | | | | | | | | | | | | (generic-lambda-capturing) that broke libc++. See http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-November/033369.html for discussion on cfe-dev. This fix explicitly checks whether we are within the declcontext of a lambda's call operator - which is what I had intended to be true (and assumed would be true if getCurLambda returns a valid pointer) before checking whether a lambda can capture the potential-captures of the innermost lambda. A deeper fix (that addresses why getCurLambda() returns a valid pointer when perhaps it shouldn't?) - as proposed by Richard Smith in http://llvm.org/bugs/show_bug.cgi?id=17877 - has been suggested as a FIXME. Patch was LGTM'd by Richard (just barely :) http://llvm-reviews.chandlerc.com/D2144 llvm-svn: 194448
* Fixed moduleImport and ident callbacks. Fixed modules test. Added ident ↵John Thompson2013-11-123-10/+20
| | | | | | callback test. A better test for moduleExport is coming. llvm-svn: 194447
* Remove C++11ism.Richard Smith2013-11-121-1/+1
| | | | llvm-svn: 194446
* Extra test for r194444.Richard Smith2013-11-121-0/+12
| | | | llvm-svn: 194445
* Rather than duplicating extension diagnostics to allow them to cause aRichard Smith2013-11-1217-106/+73
| | | | | | | | | | substitution failure, allow a flag to be set on the Diagnostic object, to mark it as 'causes substitution failure'. Refactor Diagnostic.td and the tablegen to use an enum for SFINAE behavior rather than a bunch of flags. llvm-svn: 194444
* R600/SI: Change formatting of printed registers.Matt Arsenault2013-11-1255-282/+343
| | | | | | | | | | | | | | | | | | | | | | | Print the range of registers used with a single letter prefix. This better matches what the shader compiler produces and is overall less obnoxious than concatenating all of the subregister names together. Instead of SGPR0, it will print s0. Instead of SGPR0_SGPR1, it will print s[0:1] and so on. There doesn't appear to be a straightforward way to get the actual register info in the InstPrinter, so this parses the generated name to print with the new syntax. The required test changes are pretty nasty, and register matching regexes are now worse. Since there isn't a way to add to a variable in FileCheck, some of the tests now don't check the exact number of registers used, but I don't think that will be a real problem. llvm-svn: 194443
* Change the default branch instruction to be the 16 bit variety for mips16.Reed Kotler2013-11-124-5/+63
| | | | | | | | | | | This has no material effect at this time since we don't have a direct object emitter for mips16 and the assembler can't tell them apart. I place a comment "16 bit inst" for those so that I can tell them apart in the output. The constant island pass has only been minimally changed to allow this. More complete branch work is forthcoming but this is the first step. llvm-svn: 194442
* -fms-compatibility: Use C++98 null pointer constant rulesReid Kleckner2013-11-122-2/+24
| | | | | | Patch by Will Wilson! llvm-svn: 194441
* [extra] pp-trace - Add test for conditional callbacks.John Thompson2013-11-121-0/+294
| | | | llvm-svn: 194440
* COSMETIC: Right justify an asterix in the previous refactoring.Faisal Vali2013-11-121-1/+1
| | | | | | | | Hopefully Richard won't notice this terrible egregiocity - clearly the work of a malevolent poltergeist - fixed now ;) No functionality change. llvm-svn: 194439
* REFACTOR: Have PushLambdaScope return the LambdaScopeInfo that it creates.Faisal Vali2013-11-124-7/+8
| | | | | | | | No Functionality change. This refactoring avoids having to call getCurLambda right after PushLambdaScope, to obtain the LambdaScopeInfo that was created during the call to PushLambdaScope. llvm-svn: 194438
* Extract a bc attr parsing helper that returns Attribute::None on errorReid Kleckner2013-11-121-78/+49
| | | | | | | The parsing method still returns llvm::error_code for consistency with other parsing methods. Minor cleanup, no functionality change. llvm-svn: 194437
* Add object logging to HistoryThread. Call the DoDestroy() method fromJason Molenda2013-11-121-0/+8
| | | | | | the HistoryThread dtor. llvm-svn: 194436
* ObjectiveC. Try to unbreak buildbot.Fariborz Jahanian2013-11-121-1/+1
| | | | llvm-svn: 194435
* ObjectiveC. By default allow array/dictionary subscripting inFariborz Jahanian2013-11-112-2/+12
| | | | | | ObjectiveC legacy runtime too. // rdar://15363492 llvm-svn: 194434
* R600/SI: Add test that fails due to requiring i64 mul for pointersMatt Arsenault2013-11-111-0/+18
| | | | llvm-svn: 194433
* Patch from Bruce Mitchener; fixes two typos in comments. No functionality ↵Marshall Clow2013-11-112-2/+2
| | | | | | change. PR17843 llvm-svn: 194432
* Lower X86::MORESTACK_RET and X86::MORESTACK_RET_RESTORE_R10 inLang Hames2013-11-111-12/+12
| | | | | | | | | | | | | | X86AsmPrinter::EmitInstruction, rather than X86MCInstLower::Lower. The aim is to improve the reusability of the X86MCInstLower class by making it more function-like. The X86::MORESTACK_RET_RESTORE_R10 pseudo broke the function model by emitting an extra instruction to the MCStreamer attached to the AsmPrinter. The patch should have no impact on generated code. llvm-svn: 194431
* Add a testcase where we replace a destructor with an alias.Rafael Espindola2013-11-111-0/+16
| | | | | | This is a reduced testcase from a cast to Function failing during bootstrap. llvm-svn: 194430
* ARM: make assembly files compile Thumb2 with nop IT block.Tim Northover2013-11-118-7/+33
| | | | | | | | ARM's UAL syntax allows the same assembly file to be compiled in both ARM and Thumb mode. Conditional execution is handled by requiring the Thumb IT blocks, but essentially ignoring them when compiling for ARM. llvm-svn: 194429
* Fix the recently added anyregcc convention to handle spilled operands.Andrew Trick2013-11-112-9/+47
| | | | | | | | | | | | Fixes <rdar://15432754> [JS] Assertion: "Folded a def to a non-store!" The primary purpose of anyregcc is to prevent a patchpoint's call arguments and return value from being spilled. They must be available in a register, although the calling convention does not pin the register. It's up to the front end to avoid using this convention for calls with more arguments than allocatable registers. llvm-svn: 194428
* Print new JavaScript calling conventions symbolically.Andrew Trick2013-11-111-0/+2
| | | | llvm-svn: 194427
* [mips] Partially revert r193640. Stack alignment should not be determined byAkira Hatanaka2013-11-114-25/+14
| | | | | | the floating point register mode. llvm-svn: 194426
* R600: Use function inputs to represent data stored in gprVincent Lejeune2013-11-1129-321/+285
| | | | llvm-svn: 194425
* Fix PR17952.Shuxin Yang2013-11-119-28/+396
| | | | | | | | | | | | | | | | | | | | | | | The symptom is that an assertion is triggered. The assertion was added by me to detect the situation when value is propagated from dead blocks. (We can certainly get rid of assertion; it is safe to do so, because propagating value from dead block to alive join node is certainly ok.) The root cause of this bug is : edge-splitting is conducted on the fly, the edge being split could be a dead edge, therefore the block that split the critial edge needs to be flagged "dead" as well. There are 3 ways to fix this bug: 1) Get rid of the assertion as I mentioned eariler 2) When an dead edge is split, flag the inserted block "dead". 3) proactively split the critical edges connecting dead and live blocks when new dead blocks are revealed. This fix go for 3) with additional 2 LOC. Testing case was added by Rafael the other day. llvm-svn: 194424
* [mips] Partially revert r193641. Stack alignment should not be determined byAkira Hatanaka2013-11-112-3/+2
| | | | | | | the floating point register mode. llvm-svn: 194423
* [extra] pp-trace - Test for moduleImport.John Thompson2013-11-113-0/+29
| | | | llvm-svn: 194422
* Add support for DT_VERxxx and DT_MIPS_xxx .dynamic section entries to theSimon Atanasyan2013-11-114-0/+62
| | | | | | | | | llvm-readobj. The patch reviewed by Michael Spencer. http://llvm-reviews.chandlerc.com/D2113 llvm-svn: 194421
* Revert "Using an invalid -O falls back on -O3 instead of an error"Sylvestre Ledru2013-11-114-12/+8
| | | | | | | | This reverts commit r194403. Was breaking too many tests... llvm-svn: 194420
* Revert "Remove -### from the -O20 test, it was failing the test (?)"Sylvestre Ledru2013-11-111-1/+1
| | | | | | | | This reverts commit r194414. Was breaking too many tests... llvm-svn: 194419
* Change libLTO back to linking with @executable_path instead of @rpath.Bob Wilson2013-11-111-1/+1
| | | | | | | This partially reverts r187641 until ld64 adopts a change to link with an rpath setting. llvm-svn: 194418
* CalcSpillWeights: allow overidding the spill weight normalizing functionArnaud A. de Grandmaison2013-11-112-6/+16
| | | | | | | | This will enable the PBQP register allocator to provide its own normalizing function. No functionnal change. llvm-svn: 194417
* [ARM] Add support for MVFR2 which is new in ARMv8Artyom Skrobov2013-11-115-0/+19
| | | | llvm-svn: 194416
* Fixing a problem with iterator validity in ↵Andrew Kaylor2013-11-111-2/+12
| | | | | | RuntimeDyldImpl::resolveExternalSymbols llvm-svn: 194415
* Remove -### from the -O20 test, it was failing the test (?)Sylvestre Ledru2013-11-111-1/+1
| | | | llvm-svn: 194414
* Increase log detail for size mismatch in EntityVariable::MaterializeEd Maste2013-11-111-1/+1
| | | | llvm-svn: 194413
* Improve the documentation (bis) with Arthur and Chandler's commentsSylvestre Ledru2013-11-111-6/+2
| | | | llvm-svn: 194412
* Fix pr17875.Rafael Espindola2013-11-112-3/+16
| | | | | | | | The assert this patch deletes was valid only when aliasing D2 to D1, not when looking at a base class. Since the assert was in the path where we had already decided to not produce an alias, just drop it. llvm-svn: 194411
* [NVPTX] Properly handle bitcast ConstantExpr when checking for the alignment ↵Justin Holewinski2013-11-112-13/+64
| | | | | | of function parameters llvm-svn: 194410
* [NVPTX] Fix logic error in loading vector parameters of more than 4 componentsJustin Holewinski2013-11-112-1/+14
| | | | llvm-svn: 194409
* Darwin(ish): we don't want __ARM_EABI__ even on v7a embedded targets.Tim Northover2013-11-112-2/+9
| | | | llvm-svn: 194408
* [AArch64] The shift right/left and insert immediate builtins expect 3Chad Rosier2013-11-112-10/+10
| | | | | | source operands, a vector, an element to insert, and a shift amount. llvm-svn: 194407
* [AArch64] The shift right/left and insert immediate builtins expect 3Chad Rosier2013-11-113-26/+41
| | | | | | source operands, a vector, an element to insert, and a shift amount. llvm-svn: 194406
* Improve the documentation of the optimization flagsSylvestre Ledru2013-11-111-15/+51
| | | | | | | | | | | | Reviewers: rafael.espindola, rengolin, hfinkel Reviewed By: rengolin CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2138 llvm-svn: 194405
* CalcSpillWeights: give a better describing name to calculateSpillWeightsArnaud A. de Grandmaison2013-11-116-15/+14
| | | | | | | | Besides, this relates it more obviously to the VirtRegAuxInfo::calculateSpillWeightAndHint. No functionnal change. llvm-svn: 194404
* Using an invalid -O falls back on -O3 instead of an errorSylvestre Ledru2013-11-114-8/+12
| | | | | | | | | | | | | | | | | | | | | Summary: Currently with clang: $ clang -O20 foo.c error: invalid value '20' in '-O20' With the patch: $ clang -O20 foo.c warning: invalid value '20' in '-O20'. Fall back on value '3' Reviewers: rengolin, hfinkel Reviewed By: rengolin CC: cfe-commits, hfinkel, rengolin Differential Revision: http://llvm-reviews.chandlerc.com/D2125 llvm-svn: 194403
* ObjectiveC migrator. More testing of instancetype migration inFariborz Jahanian2013-11-112-0/+56
| | | | | | method implementations. // rdar://15438505 llvm-svn: 194402
* Unify the adding of enumerators with the construction of the enumeration.Eric Christopher2013-11-112-23/+25
| | | | llvm-svn: 194401
* Formatting.Eric Christopher2013-11-111-9/+8
| | | | llvm-svn: 194400
* 80-col.Eric Christopher2013-11-111-5/+7
| | | | llvm-svn: 194399
OpenPOWER on IntegriCloud