| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 186176
|
|
|
|
|
|
|
|
| |
CHECK-LABEL is meant to be used in place on CHECK on lines containing identifiers or other unique labels (they need not actually be labels in the source or output language, though.) This is used to break up the input stream into separate blocks delineated by CHECK-LABEL lines, each of which is checked independently. This greatly improves the accuracy of errors and fix-it hints in many cases, and allows for FileCheck to recover from errors in one block by continuing to subsequent blocks.
Some tests will be converted to use this new directive in forthcoming patches.
llvm-svn: 186162
|
|
|
|
| |
llvm-svn: 186042
|
|
|
|
| |
llvm-svn: 185925
|
|
|
|
| |
llvm-svn: 185854
|
|
|
|
|
|
|
|
| |
than the one being processed.
Please let me know if you disagree with this assessment (no one has yet, after asking on llvm-commits and LLVMDev) and I will revert.
llvm-svn: 185848
|
|
|
|
| |
llvm-svn: 185753
|
|
|
|
| |
llvm-svn: 185739
|
|
|
|
|
|
|
| |
functions. Make the function attributes pass add it to known library functions
and when it can deduce it.
llvm-svn: 185735
|
|
|
|
| |
llvm-svn: 185581
|
|
|
|
| |
llvm-svn: 185479
|
|
|
|
|
|
|
|
|
|
| |
"Writing an LLVM Compiler Backend" can be misinterpreted as meaning
"backend" in the sense of "using LLVM as a backend for your compiler for
your new language". This new name is less ambiguous.
As a bonus, this brings the title in line with the file name.
llvm-svn: 185377
|
|
|
|
| |
llvm-svn: 185137
|
|
|
|
|
|
| |
in alphabetical order.
llvm-svn: 185113
|
|
|
|
| |
llvm-svn: 185073
|
|
|
|
|
|
|
|
| |
The Builtin attribute is an attribute that can be placed on function call site that signal that even though a function is declared as being a builtin,
rdar://problem/13727199
llvm-svn: 185049
|
|
|
|
| |
llvm-svn: 184973
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
defined names
This patch modifies TableGen to generate a function in
${TARGET}GenInstrInfo.inc called getNamedOperandIdx(), which can be used
to look up indices for operands based on their names.
In order to activate this feature for an instruction, you must set the
UseNamedOperandTable bit.
For example, if you have an instruction like:
def ADD : TargetInstr <(outs GPR:$dst), (ins GPR:$src0, GPR:$src1)>;
You can look up the operand indices using the new function, like this:
Target::getNamedOperandIdx(Target::ADD, Target::OpName::dst) => 0
Target::getNamedOperandIdx(Target::ADD, Target::OpName::src0) => 1
Target::getNamedOperandIdx(Target::ADD, Target::OpName::src1) => 2
The operand names are case sensitive, so $dst and $DST are considered
different operands.
This change is useful for R600 which has instructions with a large number
of operands, many of which model single bit instruction configuration
values. These configuration bits are common across most instructions,
but may have a different operand index depending on the instruction type.
It is useful to have a convenient way to look up the operand indices,
so these bits can be generically set on any instruction.
llvm-svn: 184879
|
|
|
|
| |
llvm-svn: 184522
|
|
|
|
| |
llvm-svn: 184514
|
|
|
|
|
|
| |
'\n' was displaying as 'n'
llvm-svn: 184507
|
|
|
|
|
|
| |
of LangRef
llvm-svn: 184479
|
|
|
|
|
|
|
|
| |
IEEE 754R-2008 compliant and that the relevant method renaming occurred.
For more information see r184449, r184350, r184356, r184366.
llvm-svn: 184452
|
|
|
|
| |
llvm-svn: 184426
|
|
|
|
|
|
| |
The information was correct pre-LPAE.
llvm-svn: 184253
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Archive files (.a) can have a symbol table indicating which object
files in them define which symbols. The purpose of this symbol table
is to speed up linking by allowing the linker the read only the .o
files it is actually going to use instead of having to parse every
object's symbol table.
LLVM's archive library currently supports a LLVM specific format for
such table. It is hard to see any value in that now that llvm-ld is
gone:
* System linkers don't use it: GNU ar uses the same plugin as the
linker to create archive files with a regular index. The OS X ar
creates no symbol table for IL files, I assume the linker just parses
all IL files.
* It doesn't interact well with archives having both IL and native objects.
* We probably don't want to be responsible for yet another archive
format variant.
This patch then:
* Removes support for creating and reading such index from lib/Archive.
* Remove llvm-ranlib, since there is nothing left for it to do.
We should in the future add support for regular indexes to llvm-ar for
both native and IL objects. When we do that, llvm-ranlib should be
reimplemented as a symlink to llvm-ar, as it is equivalent to "ar s".
llvm-svn: 184019
|
|
|
|
| |
llvm-svn: 183825
|
|
|
|
| |
llvm-svn: 183761
|
|
|
|
|
|
|
|
| |
The effect of llvm.used is to introduce an invisible reference, so this seems
a reasonable restriction. It will be used to provide an easy ordering of
the entries in llvm.used.
llvm-svn: 183743
|
|
|
|
|
|
|
|
|
|
|
| |
Several LLVM headers are moved. The code listings in
LLVM tutorial are not updated yet.
This CL removes the code replica in the .rst, and replace
them with a literalinclude directive, so that sphinx can
include the latest code automatically.
llvm-svn: 183607
|
|
|
|
| |
llvm-svn: 183562
|
|
|
|
| |
llvm-svn: 183555
|
|
|
|
| |
llvm-svn: 183548
|
|
|
|
| |
llvm-svn: 183342
|
|
|
|
| |
llvm-svn: 183341
|
|
|
|
|
|
| |
LLVM_YAML_STRONG_TYPEDEF() is the correct macro to perform this function.
llvm-svn: 183280
|
|
|
|
| |
llvm-svn: 183248
|
|
|
|
| |
llvm-svn: 183210
|
|
|
|
| |
llvm-svn: 182990
|
|
|
|
| |
llvm-svn: 182939
|
|
|
|
|
|
|
| |
- clarify that vectorizer.width only applies if the vectorizer decides to
vectorize.
llvm-svn: 182938
|
|
|
|
|
|
|
|
| |
on the LLDB 3.3 release.
Reviewed by: Greg Clayton and Bill Wendling
llvm-svn: 182931
|
|
|
|
| |
llvm-svn: 182926
|
|
|
|
|
|
|
|
|
|
| |
changes
This updates the debug info metadata schema documentation for various
schema changes made recently surrounding filename information for
scopes and the representation of imported entities.
llvm-svn: 182817
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- llvm.loop.parallel metadata has been renamed to llvm.loop to be more generic
by making the root of additional loop metadata.
- Loop::isAnnotatedParallel now looks for llvm.loop and associated
llvm.mem.parallel_loop_access
- document llvm.loop and update llvm.mem.parallel_loop_access
- add support for llvm.vectorizer.width and llvm.vectorizer.unroll
- document llvm.vectorizer.* metadata
- add utility class LoopVectorizerHints for getting/setting loop metadata
- use llvm.vectorizer.width=1 to indicate already vectorized instead of
already_vectorized
- update existing tests that used llvm.loop.parallel and
llvm.vectorizer.already_vectorized
Reviewed by: Nadav Rotem
llvm-svn: 182802
|
|
|
|
| |
llvm-svn: 182766
|
|
|
|
| |
llvm-svn: 182763
|
|
|
|
| |
llvm-svn: 182759
|
|
|
|
| |
llvm-svn: 182718
|
|
|
|
|
|
|
|
|
|
|
| |
Other than recognizing the attribute, the patch does little else.
It changes the branch probability analyzer so that edges into
blocks postdominated by a cold function are given low weight.
Added analysis and code generation tests. Added documentation for the
new attribute.
llvm-svn: 182638
|