summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Do not store scalar accesses in InstructionToAccessMichael Kruse2015-12-221-3/+6
| | | | | | | | | | | | | | | At code generation, scalar reads are generated before the other statement's instructions, respectively scalar writes after them, in contrast to array accesses which are "executed" with the instructions they are linked to. Therefore it makes sense to not map the scalar accesses to a place of execution. Follow-up patches will also remove some of the directs links from a scalar access to a single instruction, such that only having array accesses in InstructionToAccess ensures consistency. Differential Revision: http://reviews.llvm.org/D13676 llvm-svn: 256298
* [unittest] Use Support/thread.h instead of <thread> (second try)Vedant Kumar2015-12-221-1/+1
| | | | llvm-svn: 256292
* lit: Limit number of processes on Windows to 32.Nico Weber2015-12-221-1/+3
| | | | llvm-svn: 256291
* [unittest] Use Support/Thread.h instead of <thread> to fix the Windows buildVedant Kumar2015-12-221-1/+1
| | | | llvm-svn: 256290
* Split Undefined and UndefinedElf.Rafael Espindola2015-12-228-68/+79
| | | | | | | | | | | | | | | | | | | | | | I am working on adding LTO support to the new ELF lld. In order to do that, it will be necessary to represent defined and undefined symbols that are not from ELF files. One way to do it is to change the symbol hierarchy to look like Defined : SymbolBody Undefined : SymbolBody DefinedElf<ELFT> : Defined UndefinedElf<ELFT> : Undefined Another option would be to use bogus Elf_Sym, but I think that is getting a bit too hackish. This patch does the Undefined/UndefinedElf. Split. The next one will do the Defined/DefinedElf split. llvm-svn: 256289
* Disable include sorting by default for Chromium style.Nico Weber2015-12-221-0/+1
| | | | | | | | | | | Include sorting generally can break .cc files, especially on Windows. Make this opt-in for Chromium style to give us some more time to roll this out. (Given that the Google style guide is used by many companies, some of them probably writing code on Windows, one could argue this should be opt-in in general...) llvm-svn: 256288
* Document that we recommend to turn off -gmodules when building a staticAdrian Prantl2015-12-221-1/+6
| | | | | | library for distribution to other machines on the clang man page. llvm-svn: 256287
* Make wasm-toolchain.c test pass on Windows.Nico Weber2015-12-221-1/+1
| | | | llvm-svn: 256286
* [cfi] Fix handling of uninstrumented libraries.Evgeniy Stepanov2015-12-222-1/+6
| | | | | | CFI shadow for non-CFI libraries should be "unchecked", not "invalid". llvm-svn: 256285
* [ASTMatchers] Fix typo in booleanType() doc.Samuel Benzaquen2015-12-222-1/+23
| | | | | | | Fix typo in booleanType() doc and recreate the LibASTMatchersReference.html reference document. llvm-svn: 256284
* Allow test decorators to use lists (and not_in(list)) for archesAdrian McCarthy2015-12-221-3/+8
| | | | | | Differential Revision: https://mail.google.com/mail/u/0/?zx=w4areffgjbgg#inbox/151cb6afe6169bb0 llvm-svn: 256283
* AMDGPU/SI: Use flat for global load/store when targeting HSAChangpeng Fang2015-12-2213-82/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: For some reason doing executing an MUBUF instruction with the addr64 bit set and a zero base pointer in the resource descriptor causes the memory operation to be dropped when the shader is executed using the HSA runtime. This kind of MUBUF instruction is commonly used when the pointer is stored in VGPRs. The base pointer field in the resource descriptor is set to zero and and the pointer is stored in the vaddr field. This patch resolves the issue by only using flat instructions for global memory operations when targeting HSA. This is an overly conservative fix as all other configurations of MUBUF instructions appear to work. NOTE: re-commit by fixing a failure in Codegen/AMDGPU/llvm.dbg.value.ll Reviewers: tstellarAMD Subscribers: arsenm, llvm-commits Differential Revision: http://reviews.llvm.org/D15543 llvm-svn: 256282
* Also add unnamed_addr to functions.Rafael Espindola2015-12-222-13/+30
| | | | llvm-svn: 256281
* Revert r256277 and r256279.Akira Hatanaka2015-12-229-232/+38
| | | | | | Some of the bots failed again. llvm-svn: 256280
* Add a .td file I forgot to add in r256277.Akira Hatanaka2015-12-221-0/+1
| | | | llvm-svn: 256279
* [ASTMatchers] Add booleanType() matcher.Samuel Benzaquen2015-12-223-0/+20
| | | | llvm-svn: 256278
* Provide a way to specify inliner's attribute compatibility and merging.Akira Hatanaka2015-12-228-38/+231
| | | | | | | | | | | | | | | | | | This reapplies r252990 and r252949. I've added member function getKind to the Attr classes which returns the enum or string of the attribute. Original commit message for r252949: Provide a way to specify inliner's attribute compatibility and merging rules using table-gen. NFC. This commit adds new classes CompatRule and MergeRule to Attributes.td, which are used to generate code to check attribute compatibility and merge attributes of the caller and callee. rdar://problem/19836465 llvm-svn: 256277
* Delete dead GlobalAliases.Rafael Espindola2015-12-224-4/+14
| | | | llvm-svn: 256276
* Revert "AMDGPU/SI: Use flat for global load/store when targeting HSA"Rafael Espindola2015-12-2213-131/+82
| | | | | | | | This reverts commit r256273. It broke CodeGen/AMDGPU/llvm.dbg.value.ll llvm-svn: 256275
* Merge duplicated code.Rafael Espindola2015-12-221-21/+28
| | | | | | | | | The code for deleting dead global variables and functions was duplicated. This is in preparation for also deleting dead global aliases. llvm-svn: 256274
* AMDGPU/SI: Use flat for global load/store when targeting HSAChangpeng Fang2015-12-2213-82/+131
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: For some reason doing executing an MUBUF instruction with the addr64 bit set and a zero base pointer in the resource descriptor causes the memory operation to be dropped when the shader is executed using the HSA runtime. This kind of MUBUF instruction is commonly used when the pointer is stored in VGPRs. The base pointer field in the resource descriptor is set to zero and and the pointer is stored in the vaddr field. This patch resolves the issue by only using flat instructions for global memory operations when targeting HSA. This is an overly conservative fix as all other configurations of MUBUF instructions appear to work. Reviewers: tstellarAMD Subscribers: arsenm, llvm-commits Differential Revision: http://reviews.llvm.org/D15543 llvm-svn: 256273
* Use early continue to reduce indentation.Rafael Espindola2015-12-221-19/+21
| | | | llvm-svn: 256272
* Simplify iterator management. NFC.Rafael Espindola2015-12-221-45/+27
| | | | | | | Not passing an iterator to processGlobal will allow it to work with other GlobalValues. llvm-svn: 256271
* XFAIL TestCppNsImport on FreeBSDEd Maste2015-12-221-0/+1
| | | | | | | | | It has an existing XFAIL annotation for GCC >= 4.9 but it also fails on FreeBSD 10.x with Clang 3.4.1. llvm.org/pr25925 llvm-svn: 256270
* Refactor canSynthesize in the BlockGenerators [NFC]Johannes Doerfert2015-12-222-6/+14
| | | | llvm-svn: 256269
* Add expectedFailureFreeBSD to an additional thread state test failing on FreeBSDEd Maste2015-12-221-0/+1
| | | | | | This new failure has been noted in the existing PR, llvm.org/pr15824 llvm-svn: 256268
* Treat inline assembly as a constant in the code generation.Johannes Doerfert2015-12-221-0/+4
| | | | llvm-svn: 256267
* Reduce indention in BlockGenerator::trySynthesizeNewValue [NFC]Johannes Doerfert2015-12-221-23/+26
| | | | llvm-svn: 256266
* Add advice on choosing reviewersPaul Robinson2015-12-221-1/+19
| | | | llvm-svn: 256265
* [PGO] Move buffer write callback to a common fileXinliang David Li2015-12-223-19/+21
| | | | | | This is a NFC refactoring enabling code sharing by file writer. llvm-svn: 256264
* [BPI] Replace weights by probabilities in BPI.Cong Hou2015-12-228-280/+165
| | | | | | | | | | | | This patch removes all weight-related interfaces from BPI and replace them by probability versions. With this patch, we won't use edge weight anymore in either IR or MC passes. Edge probabilitiy is a better representation in terms of CFG update and validation. Differential revision: http://reviews.llvm.org/D15519 llvm-svn: 256263
* Remove deprecated llvm.experimental.gc.result.{int,float,ptr} intrinsics.Manuel Jacob2015-12-227-25/+4
| | | | | | | | | | | | | | Summary: These were deprecated 11 months ago when a generic llvm.experimental.gc.result intrinsic, which works for all types, was added. Reviewers: sanjoy, reames Subscribers: sanjoy, chenli, llvm-commits Differential Revision: http://reviews.llvm.org/D15719 llvm-svn: 256262
* [clang-tidy] Added documentation for modernize-redundant-void-argAlexander Kornienko2015-12-222-0/+19
| | | | llvm-svn: 256261
* ScopDetection: Simplify std::distance(....) to BB->size()Tobias Grosser2015-12-221-1/+1
| | | | | | Suggested by: Johannes Doerfert <doerfert@cs.uni-saarland.de> llvm-svn: 256260
* [clang-tidy] Updates to documentation: formatting, titles, etc.Alexander Kornienko2015-12-2278-11/+170
| | | | llvm-svn: 256259
* [Support] Allow multiple paired calls to {start,stop}Timer()Vedant Kumar2015-12-224-28/+83
| | | | | | | Differential Revision: http://reviews.llvm.org/D15619 Reviewed-by: rafael llvm-svn: 256258
* skip TestEvents.py on DarwinTodd Fiala2015-12-221-0/+1
| | | | | | | | | | | | This is generating a SIGSEGV somewhere around 1 in 10 runs on OS X. Skip the whole test to avoid testbot noise until we can get the SIGSEGV addressed. Tracking with: https://llvm.org/bugs/show_bug.cgi?id=25924 llvm-svn: 256257
* fix a gcc warningNico Weber2015-12-222-2/+3
| | | | llvm-svn: 256256
* test infra: fix lldbinline tests to work with rerunTodd Fiala2015-12-225-2/+42
| | | | | | | Fixes: https://llvm.org/bugs/show_bug.cgi?id=25922 llvm-svn: 256255
* Updated year (2014-2015).Alexander Kornienko2015-12-222-2/+2
| | | | llvm-svn: 256254
* [clang-tools-extra] Text formattingAlexander Kornienko2015-12-221-7/+8
| | | | llvm-svn: 256253
* [RS4GC] Fix crash in the case that a live variable has a constant base.Manuel Jacob2015-12-223-0/+52
| | | | | | | | | | | | | | | | | | | Summary: Previously, RS4GC crashed in CreateGCRelocates() because it assumed that every base is also in the array of live variables, which isn't true if a live variable has a constant base. This change fixes the crash by making sure CreateGCRelocates() won't try to relocate a live variable with a constant base. This would be unnecessary anyway because anything with a constant base won't move. Reviewers: reames Subscribers: llvm-commits, sanjoy Differential Revision: http://reviews.llvm.org/D15556 llvm-svn: 256252
* Improve error handling for `frame select` command when there are too many ↵Adrian McCarthy2015-12-222-1/+4
| | | | | | | | | | arguments. Bug: https://llvm.org/bugs/show_bug.cgi?id=25847 It now gives a more specific error message and then returns instead of trying to select the wrong frame. llvm-svn: 256251
* Add expectedFailureFreeBSD to tests failing in the same way as on LinuxEd Maste2015-12-221-0/+3
| | | | | | llvm.org/pr25819 llvm-svn: 256250
* [AArch64] Promote loads from storedJun Bum Lim2015-12-224-8/+951
| | | | | | | | | | | | | | | | | | | | This is a recommit of r256004 which was reverted in r256160. The issue was the incorrect promotion for half and byte loads transformed into mov instructions. This fix will replace half and byte type loads only with bit field extracts. Original commit message: This change promotes load instructions which directly read from stored by replacing them with mov instructions. If the store is wider than the load, the load will be replaced with a bitfield extract. For example : STRWui %W1, %X0, 1 %W0 = LDRHHui %X0, 3 becomes STRWui %W1, %X0, 1 %W0 = UBFMWri %W1, 16, 31 llvm-svn: 256249
* Remove PC -1 offset from FreeBSD arm64 UpdateAfterBreakpointEd Maste2015-12-221-2/+0
| | | | | | It was a copy-and-paste leftover. llvm-svn: 256248
* clang-format: [JS] Support arrays of object-type literals.Daniel Jasper2015-12-222-1/+6
| | | | | | | | | | | | | | | Before: interface I { o: {} []; } After: interface I { o: {}[]; } llvm-svn: 256247
* clang-format: [JS] Conservatively introduce column layout for JS arrayDaniel Jasper2015-12-222-4/+23
| | | | | | | | initializers. For now, only use it for 20 items or more. Otherwise, clang-format formats these one-per-line and thus increases the vertical code size a lot. llvm-svn: 256246
* clang-format: [JS] "operator" is not a keyword in Java/JavaScript.Daniel Jasper2015-12-223-2/+10
| | | | llvm-svn: 256245
* Don't pack the structs of the jit debug interfaceTamas Berghammer2015-12-221-2/+0
| | | | | | | | | None of the documentation mentions that the entries are packed structs and also none of the other implementation I found pack them. Differential revision: http://reviews.llvm.org/D15715 llvm-svn: 256244
OpenPOWER on IntegriCloud