summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [CMake] LLVMProfileData: No need to add LINK_LIBS here. LLVMBuild should do.NAKAMURA Takumi2014-03-231-4/+1
| | | | llvm-svn: 204553
* llvm-profdata doesn't require LLVMCore.NAKAMURA Takumi2014-03-232-2/+2
| | | | llvm-svn: 204552
* Removed unused includeAlexander Kornienko2014-03-231-1/+0
| | | | llvm-svn: 204551
* If an update record makes a declaration interesting, pass it to the consumer.Richard Smith2014-03-235-18/+39
| | | | llvm-svn: 204550
* llvm-profdata: Don't pipe stderr into show for the testsJustin Bogner2014-03-221-9/+9
| | | | | | | | Some text shows up on stderr when using guard malloc, and this test was trying to treat that as input to llvm-profdata show. There's no reason to pipe stderr into show at all here. llvm-svn: 204549
* Prune includes in ARM target.Craig Topper2014-03-2232-55/+25
| | | | llvm-svn: 204548
* Emit an update record if we instantiate the definition of a function templateRichard Smith2014-03-2211-1/+97
| | | | | | | | specialization from a module. (This can also happen for function template specializations in PCHs if they're instantiated eagerly, because they're constexpr or have a deduced return type.) llvm-svn: 204547
* Cleanup some dead assignements reported by scan-buildArnaud A. de Grandmaison2014-03-227-19/+7
| | | | | | No functionnal change. llvm-svn: 204545
* ARM IAS: properly handle function entries in .thumbSaleem Abdulrasool2014-03-224-2/+126
| | | | | | | | | | | | | | | | | | | | When a label is parsed, check if there is type information available for the label. If so, check if the symbol is a function. If the symbol is a function and we are in thumb mode and no explicit thumb_func has been emitted, adjust the symbol data to indicate that the function definition is a thumb function. The application of this inferencing is improved value handling in the object file (the required thumb bit is set on symbols which are thumb functions). It also helps improve compatibility with binutils. The one complication that arises from this handling is the MCAsmStreamer. The default implementation of getOrCreateSymbolData in MCStreamer does not support tracking the symbol data. In order to support the semantics of thumb functions, track symbol data in assembly streamer. Although O(n) in number of labels in the TU, this is already done in various other streamers and as such the memory overhead is not a practical concern in this scenario. llvm-svn: 204544
* [PowerPC] Fix the VSX v2f64 return registerHal Finkel2014-03-222-7/+5
| | | | | | | v2f64 values, like other 128-bit values, are returned under VSX in register vs34 (Altivec register v2). llvm-svn: 204543
* [TableGen] Don't assert, produce an error, when an instruction has too few ↵Hal Finkel2014-03-221-1/+12
| | | | | | | | | | | operands When an instruction's operand list does not have a sufficient number of operands to match with all of the variables that contribute to its encoding, instead of asserting inside a call to getSubOperandNumber, produce an informative error. llvm-svn: 204542
* [Mips] Make the test to be a bit more relaxed to lld YAML output.Simon Atanasyan2014-03-221-30/+30
| | | | llvm-svn: 204541
* llvm-profdata: Avoid F_Text in "merge" for now, since "llvm-profdata show" ↵NAKAMURA Takumi2014-03-221-1/+2
| | | | | | | is confused with CRLF. FIXME: line_iterator should be tolerant of CR. llvm-svn: 204540
* Revert r204493, "Make clang/test/lit.cfg pre-scan the RUN line looking for ↵NAKAMURA Takumi2014-03-221-34/+0
| | | | | | | | tool names," It was incompatible to standlalone clang build. llvm-svn: 204539
* [Constant Hoisting] Erase dead cast instructions.Juergen Ributzka2014-03-221-1/+1
| | | | | | | The cleanup code that removes dead cast instructions only removed them from the basic block, but didn't delete them. This fix erases them now too. llvm-svn: 204538
* [Constant Hoisting] Fix multiple entries for the same basic block in PHI nodes.Juergen Ributzka2014-03-222-3/+82
| | | | | | | | | | | | | | | | | | | | A PHI node usually has only one value/basic block pair per incoming basic block. In the case of a switch statement it is possible that a following PHI node may have more than one such pair per incoming basic block. E.g.: %0 = phi i64 [ 123456, %case2 ], [ 654321, %Entry ], [ 654321, %Entry ] This is valid and the verfier doesn't complain, because both values are the same. Constant hoisting materializes the constant for each operand separately and the value is still the same, but the variable names have changed. As a result the verfier can't recognize anymore that they are the same value and complains. This fix adds special update code for PHI node in constant hoisting to prevent this corner case. This fixes <rdar://problem/16394449> llvm-svn: 204537
* [DAG] Fix an assertion failure caused by an invalid cast in method ↵Andrea Di Biagio2014-03-224-12/+69
| | | | | | | | | | | | 'BuildVectorSDNode::isConstantSplat' This patch renames method 'isConstantSplat' as 'getConstantSplatValue' (mainly for consistency reasons), and rewrites its logic to ensure that we always perform a legal 'cast<ConstantSDNode>'. Added test shift-combine-crash.ll to verify that DAGCombiner no longer crashes with an assertion failure in the attempt to simplify a vector shift by a vector of all undef counts. llvm-svn: 204536
* Refactor: move loading pending instantiations from chained PCHs to a more ↵Richard Smith2014-03-223-8/+13
| | | | | | appropriate place, so that we only ask the external source once. llvm-svn: 204535
* If a single step ends on a breakpoint, it should be reported as a breakpoint hitJim Ingham2014-03-221-13/+23
| | | | | | | | even though the underlying exception is a trace exception. <rdar://problem/15243355> llvm-svn: 204534
* Suppress SupportTests.LockFileManagerTest on win32 for investigating.NAKAMURA Takumi2014-03-221-0/+2
| | | | llvm-svn: 204533
* relax testcase to unbreak windows buildbots.Adrian Prantl2014-03-211-1/+1
| | | | llvm-svn: 204531
* Delete stale comment. Thanks, Eric!Adrian Prantl2014-03-211-1/+0
| | | | llvm-svn: 204530
* When generating the Attribute dumper code, do not dead-initialize MoreChildrenArnaud A. de Grandmaison2014-03-211-1/+1
| | | | | | No functional change. This will cleanup a bunch of scan-build warnings. llvm-svn: 204529
* Dwarf Debug: Remove some cargo-cult type uniquing. Scopes do not haveAdrian Prantl2014-03-211-1/+1
| | | | | | | an ID, so this is a noop. Thanks Manman for catching this! llvm-svn: 204528
* Fix the value computation inRafael Espindola2014-03-212-23/+58
| | | | | | | | | | sym_a: sym_d = sym_a + 1 This is the smallest fix I was able to extract from what got reverted in r204203. llvm-svn: 204527
* Remove some dead assignements found by scan-buildArnaud A. de Grandmaison2014-03-213-8/+5
| | | | llvm-svn: 204526
* Be a bit smarter about what nested name qualifiers to allow whenKaelyn Uhrain2014-03-213-12/+28
| | | | | | performing typo correction on very short (1 or 2 char) identifiers. llvm-svn: 204525
* [C++11] Simplify some loops in Sema::CorrectTypo as range-based for loops.Kaelyn Uhrain2014-03-211-24/+14
| | | | llvm-svn: 204524
* Use early continues to reduce nesting.Rui Ueyama2014-03-211-117/+120
| | | | llvm-svn: 204523
* Register allocator: add condition to hoist a spill to outer loop.Manman Ren2014-03-212-0/+403
| | | | | | | | | | | We make sure a spill is not hoisted to a hotter outer loop by adding a condition. Hoist a spill to outer loop if there are multiple dependents (it can be beneficial if more than one dependents are hoisted) or if DepSV (the hoisting source) is hotter than SV (the hoisting destination). rdar://16268194 llvm-svn: 204522
* Avoid GCC's "cast from pointer to integer of different size" warning.David Blaikie2014-03-212-4/+4
| | | | | | | | This is a bit of a stab in the dark as I'm not sure I've got these source files compiling correctly locally. (and the warning only reproduces on a 32bit build anyway) llvm-svn: 204521
* [Support] Follow up to r204426, for LockFileManager, make the given path ↵Argyrios Kyrtzidis2014-03-211-3/+6
| | | | | | absolute so relative paths are properly handled in both Windows and Unix. llvm-svn: 204520
* Test commitAlexander Musman2014-03-211-7/+7
| | | | llvm-svn: 204519
* InstrProf: Cleanup binary profdata testcaseDuncan P. N. Exon Smith2014-03-214-165/+24
| | | | | | | | | | Cleanup the current binary testcase for profile data. - Rename it to something more specific. - Remove the text comparison. - Check the output of llvm-profdata show. llvm-svn: 204518
* CGDebugInfo: At the end of EmitFunctionStart, Initialize PrevLoc to theAdrian Prantl2014-03-212-1/+28
| | | | | | | | location that the next call emitLocation() would default to. Otherwise setLocation() may wrongly believe that the current source file didn't change, when in fact it did. llvm-svn: 204517
* InstrProf: Move constructor to the headerDuncan P. N. Exon Smith2014-03-212-4/+2
| | | | | | | | Fixes 80-column violation at the same time. <rdar://problem/15950346> llvm-svn: 204516
* InstrProf: Remove MSVC-specific logicDuncan P. N. Exon Smith2014-03-211-14/+8
| | | | | | | | Apparently, MSVC has stdint.h now? Let's see if the buildbots complain. I'm not convinced that the build system is even set up for MSVC to build this file, but... llvm-svn: 204515
* InstrProf: Change magic number to have non-text charactersDuncan P. N. Exon Smith2014-03-211-9/+16
| | | | | | | | | Include non-text characters in the magic number so that text files can't match. <rdar://problem/15950346> llvm-svn: 204514
* InstrProf: Change magic number to have non-text charactersDuncan P. N. Exon Smith2014-03-213-10/+10
| | | | | | | | | Include non-text characters in the magic number so that text files can't match. <rdar://problem/15950346> llvm-svn: 204513
* InstrProf: Use move semantics with unique_ptrDuncan P. N. Exon Smith2014-03-212-7/+7
| | | | | | <rdar://problem/15950346> llvm-svn: 204512
* InstrProf: Detect magic numbers in a more scalable wayDuncan P. N. Exon Smith2014-03-212-34/+33
| | | | | | | | No functionality change. <rdar://problem/15950346> llvm-svn: 204511
* InstrProf: Actually detect bad headersDuncan P. N. Exon Smith2014-03-214-7/+14
| | | | | | <rdar://problem/15950346> llvm-svn: 204510
* [PECOFF] Rename link.exe -> lld-link.exe.Rui Ueyama2014-03-212-2/+3
| | | | | | | Creating the file "link.exe" made some confusion, so it's better to name it lld-link.exe, as we did for CL (clang-cl.exe). llvm-svn: 204509
* [RuntimeDyld] Fix comment for previous commit (r204439)Juergen Ributzka2014-03-211-2/+4
| | | | llvm-svn: 204508
* [RuntimeDyld] clang-format files.Juergen Ributzka2014-03-216-747/+580
| | | | llvm-svn: 204507
* DebugInfo: Omit DW_AT_addr_base from skeletal type units.David Blaikie2014-03-213-11/+9
| | | | | | | | | | | | | Type units have no addresses, so there's no need for DW_AT_addr_base. This removes another relocation from every skeletal type unit and brings LLVM's skeletal type units in line with GCC's (containing only GNU_dwo_name (strp), comp_dir (strp), and GNU_pubnames (flag_present)). Cary's got some ideas about using str_index in the .o file to reduce those last two relocations (well, replace two relocations with one relocation (pointing to the string index) and two indicies) llvm-svn: 204506
* [AArch64] Add SchedRW lists to NEON instructions.Chad Rosier2014-03-215-247/+542
| | | | | | | | | | | | Previously, only regular AArch64 instructions were annotated with SchedRW lists. This patch does the same for NEON enabling these instructions to be scheduled by the MIScheduler. Additionally, store operations are now modeled and a few SchedRW lists were updated for bug fixes (e.g. multiple def operands). Reviewers: apazos, mcrosier, atrick Patch by Dave Estes <cestes@codeaurora.org>! llvm-svn: 204505
* Suppress SIGSTOP under Linux and don't explicitly call SetResumeSignal() in ↵Andrew MacPherson2014-03-212-6/+1
| | | | | | POSIXThread, instead just let StopInfo handle it. llvm-svn: 204504
* [Mips] Emit LA25 MIPS stubs to call pic code from non-pic routines.Simon Atanasyan2014-03-215-23/+231
| | | | llvm-svn: 204503
* InstrProf: __ => _ in header guardsDuncan P. N. Exon Smith2014-03-211-3/+3
| | | | llvm-svn: 204502
OpenPOWER on IntegriCloud