| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
compression/uncompression in selected LLVM tools.
llvm-svn: 180083
|
|
|
|
| |
llvm-svn: 180031
|
|
|
|
|
|
|
| |
Also add a check for llvm.used in the verifier and simplify clients now that
they can assume they have a ConstantArray.
llvm-svn: 180019
|
|
|
|
|
|
| |
parameter attribute 'returned', which is taken advantage of in target-independent tail call opportunity detection and in ARM call lowering (when placed on an integral first parameter).
llvm-svn: 179925
|
|
|
|
| |
llvm-svn: 179768
|
|
|
|
|
|
| |
Patch by Stephen Lin
llvm-svn: 179763
|
|
|
|
| |
llvm-svn: 179716
|
|
|
|
| |
llvm-svn: 179689
|
|
|
|
|
|
| |
vectorizers have (top-down and bottom-up).
llvm-svn: 179566
|
|
|
|
| |
llvm-svn: 179565
|
|
|
|
| |
llvm-svn: 179564
|
|
|
|
|
|
| |
No content changes.
llvm-svn: 179540
|
|
|
|
| |
llvm-svn: 179518
|
|
|
|
| |
llvm-svn: 179511
|
|
|
|
|
|
| |
-fslp-vectorize-aggressive flag.
llvm-svn: 179510
|
|
|
|
| |
llvm-svn: 179503
|
|
|
|
| |
llvm-svn: 179480
|
|
|
|
| |
llvm-svn: 179363
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This option expands shown relocations from single line to a dictionary
format:
Relocation {
Offset: 0x4
Type: R_386_32 (1)
Symbol: sym
Info: 0x0
}
llvm-svn: 179359
|
|
|
|
| |
llvm-svn: 179244
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for the COFF relocation types IMAGE_REL_I386_DIR32NB and
IMAGE_REL_AMD64_ADDR32NB for 32- and 64-bit respectively. These are
similar to normal 4-byte relocations except that they do not include
the base address of the image.
Image-relative relocations are used for debug information (32-bit) and
SEH unwind tables (64-bit).
A new MCSymbolRef variant called 'VK_COFF_IMGREL32' is introduced to
specify such relocations. For AT&T assembly, this variant can be accessed
using the symbol suffix '@imgrel'.
llvm-svn: 179240
|
|
|
|
| |
llvm-svn: 179085
|
|
|
|
|
|
| |
default for -O3.
llvm-svn: 179060
|
|
|
|
| |
llvm-svn: 179006
|
|
|
|
| |
llvm-svn: 178774
|
|
|
|
| |
llvm-svn: 178567
|
|
|
|
|
|
|
|
| |
Summary: This is the beginning of user documentation for the NVPTX back-end. I want to ensure I am integrating this properly into the rest of the LLVM documentation.
Differential Revision: http://llvm-reviews.chandlerc.com/D600
llvm-svn: 178428
|
|
|
|
| |
llvm-svn: 178426
|
|
|
|
|
|
|
|
| |
Nobody says "the developer's list" or "commits archive"; they always say
"llvmdev" or "llvm-commits". It makes sense for our documentation to
at least make that association explicitly.
llvm-svn: 178425
|
|
|
|
|
|
| |
Order them roughly by "which one should a newbie join first".
llvm-svn: 178424
|
|
|
|
| |
llvm-svn: 178423
|
|
|
|
| |
llvm-svn: 178422
|
|
|
|
| |
llvm-svn: 178421
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
std::lower_bound is the canonical "binary search" in the STL
(std::binary_search generally is not what you want). The name actually
makes a lot of sense (and also has a beautiful symmetry with the
std::upper_bound algorithm). The name is nonetheless non-obvious.
Also, remove mention of "radix search". It's not even clear how that
would work in the context of a sorted vector. AFAIK "radix search" only
makes sense when you have a trie-like data structure.
llvm-svn: 178376
|
|
|
|
| |
llvm-svn: 178254
|
|
|
|
|
|
| |
for some reason was never written.
llvm-svn: 177950
|
|
|
|
|
|
| |
Patch by Thomas Schwinge.
llvm-svn: 177876
|
|
|
|
|
|
| |
Make threats about removing the old syntax.
llvm-svn: 177848
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DAG arguments can optionally be named:
(dag node, node:$name)
With this change, the node is also optional:
(dag node, node:$name, $name)
The missing node is treated as an UnsetInit, so the above is equivalent
to:
(dag node, node:$name, ?:$name)
This syntax is useful in output patterns where we currently require the
types of variables to be repeated:
def : Pat<(subc i32:$b, i32:$c), (SUBCCrr i32:$b, i32:$c)>;
This is preferable:
def : Pat<(subc i32:$b, i32:$c), (SUBCCrr $b, $c)>;
llvm-svn: 177843
|
|
|
|
|
| |
Contributed-by: Thomas Schwinge <thomas@codesourcery.com>
llvm-svn: 177841
|
|
|
|
|
|
|
| |
Also update the documentation since Sparc is the nicest backend, and
used as an example in WritingAnLLVMBackend.
llvm-svn: 177835
|
|
|
|
|
|
|
|
| |
The new wording cannot be construed as suggesting the use of
SmallVectorImpl<T> as e.g. a class member (just because the class
happens to be in an interface).
llvm-svn: 177778
|
|
|
|
| |
llvm-svn: 177775
|
|
|
|
| |
llvm-svn: 177737
|
|
|
|
| |
llvm-svn: 177458
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of complex instruction operands (e.g. address modes).
Currently, if a Pat pattern creates an instruction that has a complex
operand (i.e. one that consists of multiple sub-operands at the MI
level), this operand must match a ComplexPattern DAG pattern with the
correct number of output operands.
This commit extends TableGen to alternatively allow match a complex
operands against multiple separate operands at the DAG level.
This allows using Pat patterns to match pre-increment nodes like
pre_store (which must have separate operands at the DAG level) onto
an instruction pattern that uses a multi-operand memory operand,
like the following example on PowerPC (will be committed as a
follow-on patch):
def STWU : DForm_1<37, (outs ptr_rc:$ea_res), (ins GPRC:$rS, memri:$dst),
"stwu $rS, $dst", LdStStoreUpd, []>,
RegConstraint<"$dst.reg = $ea_res">, NoEncode<"$ea_res">;
def : Pat<(pre_store GPRC:$rS, ptr_rc:$ptrreg, iaddroff:$ptroff),
(STWU GPRC:$rS, iaddroff:$ptroff, ptr_rc:$ptrreg)>;
Here, the pair of "ptroff" and "ptrreg" operands is matched onto the
complex operand "dst" of class "memri" in the "STWU" instruction.
Approved by Jakob Stoklund Olesen.
llvm-svn: 177428
|
|
|
|
| |
llvm-svn: 177411
|
|
|
|
|
|
| |
Lit does support redirects in the 2>&1 style.
llvm-svn: 177403
|
|
|
|
| |
llvm-svn: 177314
|
|
|
|
| |
llvm-svn: 177284
|