| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
| |
This patch doesn't introduce any functionality changes.
It adds some new fields to the Hexagon instruction classes and
changes their layout to support instruction encoding.
llvm-svn: 175205
|
| |
|
|
| |
llvm-svn: 175204
|
| |
|
|
| |
llvm-svn: 175203
|
| |
|
|
| |
llvm-svn: 175200
|
| |
|
|
|
|
|
|
|
| |
LLVMCreateMemoryBufferWithMemoryRange - exposes MemoryBuffer::getMemBuffer
LLVMCreateMemoryBufferWithMemoryRangeCopy - exposes MemoryBuffer::getMemBufferCopy
Patch by Moritz Maxeiner!
llvm-svn: 175199
|
| |
|
|
|
|
| |
-feature flag, instructions definitions, test cases
llvm-svn: 175196
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The important fix is that the constant interpolation value is stored in the
parameter slot P0, which is encoded as 2.
In addition, drop the SI_INTERP_CONST pseudo instruction, pass the parameter
slot as an operand to V_INTERP_MOV_F32 instead of hardcoding it there, and
add a special operand class for the parameter slots for type checking and
pretty printing.
NOTE: This is a candidate for the Mesa stable branch.
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 175193
|
| |
|
|
|
|
|
| |
validateSymbol() is called all over the place, and it seems it's a debug check.
It significantly speedups llvm-symbolizer used in tsan/asan/msan. validateSymbol() is the second hot function and accounts for 15% of runtime.
llvm-svn: 175192
|
| |
|
|
| |
llvm-svn: 175190
|
| |
|
|
| |
llvm-svn: 175189
|
| |
|
|
|
|
| |
This patch doesn't introduce any functionality changes.
llvm-svn: 175187
|
| |
|
|
|
|
|
|
| |
inline asm with 64-bit data on ARM
Update test case to use -mtriple=arm-linux-gnueabi
llvm-svn: 175186
|
| |
|
|
|
|
| |
CodeGenMapTable.cpp.
llvm-svn: 175185
|
| |
|
|
|
|
|
|
|
| |
It fixes around 100 tfb piglit tests and 16 glean tests.
NOTE: This is a candidate for the Mesa stable branch.
Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
llvm-svn: 175183
|
| |
|
|
|
|
|
|
| |
This allows MachineInstScheduler to reorder them, and thus make scheduling more
efficient.
Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
llvm-svn: 175182
|
| |
|
|
|
| |
Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
llvm-svn: 175181
|
| |
|
|
|
|
|
|
|
| |
This fixes a couple of regressions on (probably not just) cayman
NOTE: This is a candidate for the Mesa stable branch.
Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
llvm-svn: 175180
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
CMake and autotools disagree on what "host" means in a cross-compilation
context. Autotools (and lit) take it to be the machine the binaries being
compiled now will run on. CMake takes it to be the machine actually compiling
the binaries now.
This change makes lit.site-cfg more consistent between autotools and CMake,
allowing lit tests (particularly in ExecutionEngine) to run correctly when
cross-compiled with CMake
llvm-svn: 175179
|
| |
|
|
| |
llvm-svn: 175176
|
| |
|
|
| |
llvm-svn: 175175
|
| |
|
|
| |
llvm-svn: 175173
|
| |
|
|
|
|
|
|
|
|
| |
If vector types have legal register classes, then LLVM bypasses LegalizeTypes
on them, which causes faults currently since the code to handle them isn't in
place.
This fixes test failures when AArch64 is the default target.
llvm-svn: 175172
|
| |
|
|
|
|
| |
Only comments affected. No code change at all.
llvm-svn: 175169
|
| |
|
|
| |
llvm-svn: 175168
|
| |
|
|
|
|
| |
Patch by Jonathan Anderson!
llvm-svn: 175167
|
| |
|
|
|
|
|
|
|
| |
The parser will now accept instructions with alignment specifiers written like
vld1.8 {d16}, [r0:64]
, while also still accepting the incorrect syntax
vld1.8 {d16}, [r0, :64]
llvm-svn: 175164
|
| |
|
|
| |
llvm-svn: 175158
|
| |
|
|
| |
llvm-svn: 175156
|
| |
|
|
| |
llvm-svn: 175150
|
| |
|
|
|
|
| |
post-operand legalization.
llvm-svn: 175149
|
| |
|
|
|
|
| |
"x86_64-apple-darwin".
llvm-svn: 175146
|
| |
|
|
|
|
| |
Added a test.
llvm-svn: 175144
|
| |
|
|
|
|
|
| |
Fixes assertion failure in newly added lit test. Might just be a bandaid that
needs to be revisited.
llvm-svn: 175139
|
| |
|
|
|
| |
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 175138
|
| |
|
|
|
|
|
|
| |
This reverts commit fd1335e982bbf93c5f450ed4fd29f9f787435c85.
Use a triple this time.
llvm-svn: 175134
|
| |
|
|
| |
llvm-svn: 175133
|
| |
|
|
|
|
| |
register class to match the defining instruction.
llvm-svn: 175130
|
| |
|
|
| |
llvm-svn: 175129
|
| |
|
|
|
|
| |
'and' instructions. This is a pattern that shows up a lot in ubsan binaries.
llvm-svn: 175128
|
| |
|
|
|
|
|
|
|
| |
up so that we can apply the direct object emitter patch. This patch
should be a nop right now and it's test is to not break what is already
there.
llvm-svn: 175126
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 8b75e6bc35fb3f9c1e788dbd05084c0f4a60a0f3.
The FileCheck tests are not equivalent:
test/CodeGen/X86/tailcall-structret.ll:6:10: error: expected string not found in input
; CHECK: jmp init
^
<stdin>:1:2: note: scanning from here
.section __TEXT,__text,regular,pure_instructions
^
<stdin>:13:2: note: possible intended match here
jmp _init ## TAILCALL
^
llvm-svn: 175124
|
| |
|
|
|
|
|
| |
CoalescerPairs. Also, make it take a CoalescerPair directly like other methods
of RegisterCoalescer.
llvm-svn: 175123
|
| |
|
|
|
|
|
|
|
|
|
|
| |
of the copy is a subregister def. The current code assumes that it can do a full
def of the destination register, but it is not checking that the def operand is
read-undef. It also doesn't clear the subregister index of the destination in
the new instruction to reflect the full subregister def.
These issues were found running 'make check' with my next commit that enables
rematerialization in more cases.
llvm-svn: 175122
|
| |
|
|
| |
llvm-svn: 175121
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since functions with internal linkage don't have language linkage, it is valid
to overload them:
extern "C" {
static int foo();
static int foo(int);
}
So we mangle them.
llvm-svn: 175120
|
| |
|
|
| |
llvm-svn: 175107
|
| |
|
|
|
|
|
|
|
| |
It's possible (e.g. after an LTO build) that an internal global may be used for
debugging purposes. If that's the case appending a '.b' to it makes it hard to
find that variable. Steal the name from the old GV before deleting it so that
they can find that variable again.
llvm-svn: 175104
|
| |
|
|
| |
llvm-svn: 175102
|
| |
|
|
|
|
| |
inside an #if 0 block.
llvm-svn: 175098
|
| |
|
|
| |
llvm-svn: 175097
|