summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Don't create implicit comdats.Rafael Espindola2015-11-231-2/+0
| | | | | | comdats are explicitly represented for some time now. llvm-svn: 253924
* Add new vector types for 512-, 1024- and 2048-bit vectorsKrzysztof Parzyszek2015-11-235-117/+217
| | | | | | | | Those types are needed to implement instructions for Hexagon Vector Extensions (HVX): 16x32, 16x64, 32x16, 32x32, 32x64, 64x8, 64x16, 64x32, 128x8, 128x16, 256x8, 512x1, and 1024x1. llvm-svn: 253923
* [WebAssembly] Suffix output operands with '='.Dan Gohman2015-11-2327-297/+300
| | | | | | | | This distinguishes input operands from output operands. This is something of a syntactic experiment to see whether the mild amount of clutter this adds is outweighed by the extra information it conveys to the reader. llvm-svn: 253922
* [Support] Add optional argument to SaturatingAdd() and SaturatingMultiply() ↵Nathan Slingerland2015-11-232-8/+90
| | | | | | | | | | | | | | to indicate that overflow occurred Summary: Adds the ability for callers to detect when saturation occurred on the result of saturating addition/multiplication. Reviewers: davidxl, silvas, rsmith Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14931 llvm-svn: 253921
* [RuntimeDyld] Don't allocate unnecessary stub buffer spaceSanjoy Das2015-11-237-4/+81
| | | | | | | | | | | | | | Summary: For relocation types that are known to not require stub functions, there is no need to allocate extra space for the stub functions. Reviewers: lhames, reames, maksfb Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14676 llvm-svn: 253920
* [RuntimeDyld] Add bounds checking to SectionEntry::advanceStubOffsetSanjoy Das2015-11-233-7/+19
| | | | | | | | | | | | | | Summary: Change SectionEntry to keep track of the size of its underlying allocation, and use that to bounds check advanceStubOffset. Reviewers: lhames, andrew.w.kaylor, reames Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14675 llvm-svn: 253919
* [RuntimeDyld] Add accessors to `SectionEntry`; NFCSanjoy Das2015-11-2312-223/+266
| | | | | | | | | | | | | | | | Summary: Remove naked access to the data members in `SectionEntry` and route accesses through accessor functions. This makes it obvious how the instances of the class are used, and will also facilitate adding bounds checking to `advanceStubOffset` in a later change. Reviewers: lhames, loladiro, andrew.w.kaylor Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14674 llvm-svn: 253918
* Make utils/update_llc_test_checks.py note that the assertions areJames Y Knight2015-11-23100-1/+106
| | | | | | | | | autogenerated. Also update existing test cases which appear to be generated by it and weren't modified (other than addition of the header) by rerunning it. llvm-svn: 253917
* [WebAssembly] Model the return value of store instructions in wasm.Dan Gohman2015-11-236-39/+53
| | | | llvm-svn: 253916
* [LIR] Put includes in correct order. NFC.Chad Rosier2015-11-231-1/+1
| | | | llvm-svn: 253915
* Fix a warning about commas at the end of enumerator lists.Chad Rosier2015-11-231-1/+1
| | | | llvm-svn: 253914
* [PGO] Add --text option for llvm-profdata show|merge commandsXinliang David Li2015-11-236-38/+169
| | | | | | | | | | | | | | The new option is similar to the SampleProfile dump option. - dump raw/indexed format into text profile format - merge the profile and output into text profile format. Note that Value Profiling data text format is not yet designed. That functionality will be added later. Differential Revision: http://reviews.llvm.org/D14894 llvm-svn: 253913
* SamplePGO - Add coverage tracking for samples.Diego Novillo2015-11-234-29/+94
| | | | | | | | | | | | The existing coverage tracker counts the number of records that were used from the input profile. An alternative view of coverage is to check how many available samples were applied. This way, if the profile contains several records with few samples, it doesn't really matter much that they were not applied. The more interesting records to apply are the ones that contribute many samples. llvm-svn: 253912
* [PGO] sync up target instrument decl between runtime and llvm (NFC)Xinliang David Li2015-11-231-2/+6
| | | | llvm-svn: 253911
* Update format to match clang-format in trunkTobias Grosser2015-11-231-1/+2
| | | | llvm-svn: 253910
* Make clang_Cursor_getMangling not mangle if the declaration isn't mangledEhsan Akhgari2015-11-235-0/+85
| | | | | | | | | | | | Right now clang_Cursor_getMangling will attempt to mangle any declaration, even if the declaration isn't mangled (extern C). This results in a partially mangled name which isn't useful for much. This patch makes clang_Cursor_getMangling return an empty string if the declaration isn't mangled. Patch by Michael Wu <mwu@mozilla.com>. llvm-svn: 253909
* [WinEH] Fix a case where GVN could incorrectly PRE a load into an EH pad.Andrew Kaylor2015-11-232-0/+57
| | | | | | Differential Revision: http://reviews.llvm.org/D14842 llvm-svn: 253908
* [PGO] Unify section name, section symbol definitions (Darwin)Xinliang David Li2015-11-231-6/+10
| | | | | | | Replace hard-coded references to names to key section and section symbols with common macro definitions. llvm-svn: 253907
* Prevent ProcessGDBRemote from launching local debug server in case of remote ↵Oleksiy Vyalov2015-11-232-36/+31
| | | | | | | | debug server connection failure. http://reviews.llvm.org/D14895 llvm-svn: 253906
* [WebAssembly] Don't use set_local instructions explicitly.Dan Gohman2015-11-233-9/+17
| | | | | | | | | The current approach to using get_local and set_local is to use them implicitly, as register uses and defs. Introduce new copy instructions which are themselves no-ops except for the get_local and set_local that they imply, so that we use get_local and set_local consistently. llvm-svn: 253905
* Replace loop with std::any_of, NFC.Yaron Keren2015-11-231-6/+2
| | | | | | Inspired by similar commits from Craig Topper. llvm-svn: 253904
* [ThinLTO] Deduplicate function index loading into shared helper (NFC)Teresa Johnson2015-11-234-50/+35
| | | | | | | | Add a shared helper routine to read the function index from a file and create/return the function index object. Use it in llvm-link and llvm-lto. llvm-svn: 253903
* [WinEH] Fix problem where CodeGenPrepare incorrectly sinks a bitcast into an ↵Andrew Kaylor2015-11-232-0/+65
| | | | | | | | EH pad. Differential Revision: http://reviews.llvm.org/D14842 llvm-svn: 253902
* [WebAssembly] Always print loop end labelsDan Gohman2015-11-234-1/+23
| | | | | | | | | | | | | | | | | WebAssembly is currently using labels to end scopes, so for example a loop scope looks like this: BB0_0: loop BB0_1 ... BB0_1: with BB0_0 being the label of the first block not in the loop. This requires that the label be printed even when it's only reachable via fallthrough. To arrange this, insert a no-op LOOP_END instruction in such cases at the end of the loop. llvm-svn: 253901
* clang-format: Re-add code path deleted in r253873 and add missing test.Daniel Jasper2015-11-232-0/+10
| | | | llvm-svn: 253900
* Fix alignment of r253898Martell Malone2015-11-231-10/+8
| | | | llvm-svn: 253899
* Driver: fallback to the location of clang if no sysroot,Martell Malone2015-11-231-15/+11
| | | | | | | | | | | | | | hard coding /usr makes little sense for mingw-w64. If we have portable toolchains having /usr breaks that. If the clang we use is in /usr/bin or /usr/sbin etc this will still detect as though it was hard coded to /usr This makes the most sense going forward for mingw-w64 toolchains on both linux and mac Differential Revision: http://reviews.llvm.org/D14164 llvm-svn: 253898
* [PGO] Unify section name, section symbol definitions (Linux)Xinliang David Li2015-11-231-15/+26
| | | | | | | Replace hard-coded references to names to key section and section symbols with common macro definitions. llvm-svn: 253897
* [PGO] Unify raw profile header definitionXinliang David Li2015-11-232-20/+5
| | | | | | | Replace duplicate definition raw header with common definition in InstrProfData.inc. llvm-svn: 253896
* [PGO] Use the alignment macro newly introduced (NFC)Xinliang David Li2015-11-231-1/+1
| | | | llvm-svn: 253895
* Sync up template file with master (NFC)Xinliang David Li2015-11-231-1/+3
| | | | llvm-svn: 253894
* [PGO] Introduce alignment macro for instr-prof control data(NFC)Xinliang David Li2015-11-232-2/+4
| | | | llvm-svn: 253893
* [WebAssembly] Remove incomplete MCCodeEmitter bits.Dan Gohman2015-11-232-4/+0
| | | | | | These are parts of a separate patch that I accidentally included in r253878. llvm-svn: 253892
* [PGO] Unify per-function control data definitionXinliang David Li2015-11-231-8/+2
| | | | | | | Replace duplicate definition per-func profile control data with common definition in InstrProfData.inc. llvm-svn: 253891
* [PGO] Use common definition of value profile kindXinliang David Li2015-11-231-3/+2
| | | | | | | Replace duplicate definition value profile kind definitions with common definition in InstrProfData.inc. llvm-svn: 253890
* Remove unused function parameter (NFC)Teresa Johnson2015-11-231-5/+3
| | | | llvm-svn: 253889
* Add Windows error code and tidy formatting for system errors.Paul Robinson2015-11-234-11/+15
| | | | | | Differential Revision: http://reviews.llvm.org/D14892 llvm-svn: 253888
* Make tbm-builtins.c as X86 specific unit testSumanth Gundapaneni2015-11-231-0/+2
| | | | | | Differential Revision: http://reviews.llvm.org/D14887 llvm-svn: 253887
* Disable frame pointer elimination when using -pg Xinliang David Li2015-11-233-1/+20
| | | | | | | | | | | | | | | | (Re-apply patch after bug fixing) This diff makes sure that the driver does not pass -fomit-frame-pointer or -momit-leaf-frame-pointer to the frontend when -pg is used. Currently, clang gives an error if -fomit-frame-pointer is used in combination with -pg, but -momit-leaf-frame-pointer was forgotten. Also, disable frame pointer elimination in the frontend when -pg is set. Patch by Stefan Kempf. llvm-svn: 253886
* [PGO] Use common definition of raw magic and versionXinliang David Li2015-11-231-15/+3
| | | | | | | - Replace duplicate definition and use of magic in profile runtime - Replace hard coded version reference in profile runtime llvm-svn: 253885
* [ELF/AArch64] Factor out overflow checks into a separate function. NFC.Igor Kudrin2015-11-231-17/+14
| | | | | | Differential revision: http://reviews.llvm.org/D14922 llvm-svn: 253884
* [PGO] Start use InstrProf template file in compiler-rt/lib/profileXinliang David Li2015-11-232-22/+14
| | | | | | | - Replace use of __llvm_profile_value_data with common data structure. - Remve duplicate InstrProfValueNode llvm-svn: 253883
* Add an AST matcher for narrowing when a type is volatile-qualified.Aaron Ballman2015-11-234-0/+46
| | | | llvm-svn: 253882
* Sync up InstrProfData.inc with masterXinliang David Li2015-11-231-2/+2
| | | | llvm-svn: 253881
* Fix comment not allowed in C90Xinliang David Li2015-11-231-2/+2
| | | | llvm-svn: 253880
* [ELF/AArch64] Fix overflow checks for R_AARCH64_PREL16 and _PREL32 relocations.Igor Kudrin2015-11-231-2/+2
| | | | llvm-svn: 253879
* [WebAssembly] Emit .param, .result, and .local through MC.Dan Gohman2015-11-2321-157/+132
| | | | | | This eliminates one of the main remaining uses of EmitRawText. llvm-svn: 253878
* SamplePGO - Clear coverage tracking when clearing per-function data.Diego Novillo2015-11-231-0/+2
| | | | llvm-svn: 253877
* [WebAssembly] Use dominator information to improve BLOCK placementDan Gohman2015-11-232-48/+166
| | | | | | | | | | Always starting blocks at the top of their containing loops works, but creates unnecessarily deep nesting because it makes all blocks in a loop overlap. Refine the BLOCK placement algorithm to start blocks at nearest common dominating points instead, which significantly shrinks them and reduces overlapping. llvm-svn: 253876
* [mips] .ent and .end should also set the type and size of the symbol ↵Daniel Sanders2015-11-232-1/+67
| | | | | | | | | | | | respectively. Reviewers: vkalintiris Subscribers: llvm-commits, seanbruno, emaste, vkalintiris, dsanders Differential Revision: http://reviews.llvm.org/D14221 llvm-svn: 253875
OpenPOWER on IntegriCloud