| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
that depends on MBlazeCodeGen. This is a layering violation that should really
be fixed.
llvm-svn: 144321
|
|
|
|
|
|
| |
all-targets instead of an explicit list.
llvm-svn: 144320
|
|
|
|
|
|
| |
as well.
llvm-svn: 144319
|
|
|
|
|
|
|
| |
For correctness, disable this for now.
rdar://10418009
llvm-svn: 144316
|
|
|
|
|
|
|
|
|
| |
Use the getIdentifier() method of the token, not getString(), otherwise
we keep the quotes as part of the symbol name, which we don't want.
rdar://10428015
llvm-svn: 144315
|
|
|
|
|
|
|
|
| |
Size of data being pointed to wasn't always being checked so some small writes were killing big writes
Fixes <rdar://problem/10426753>
llvm-svn: 144312
|
|
|
|
|
|
| |
forward decls and have names into the dwarf accelerator types table.
llvm-svn: 144306
|
|
|
|
|
|
| |
multiple dies per function and support C++ basenames.
llvm-svn: 144304
|
|
|
|
|
|
| |
More of rdar://9704684
llvm-svn: 144301
|
|
|
|
|
|
| |
Start of rdar://9704684
llvm-svn: 144293
|
|
|
|
|
|
| |
consistency with other targets.
llvm-svn: 144292
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instruction lower optimization" in the pre-RA scheduler.
The optimization, rather the hack, was done before MI use-list was available.
Now we should be able to implement it in a better way, perhaps in the
two-address pass until a MI scheduler is available.
Now that the scheduler has to backtrack to handle call sequences. Adding
artificial scheduling constraints is just not safe. Furthermore, the hack
is not taking all the other scheduling decisions into consideration so it's just
as likely to pessimize code. So I view disabling this optimization goodness
regardless of PR11314.
llvm-svn: 144267
|
|
|
|
|
|
|
|
| |
Note: These patterns only works in some cases because
many times the load sd node is bitcasted from a load
node of a different type.
llvm-svn: 144266
|
|
|
|
|
|
|
| |
determine if the value is negative and flip the sign accordingly.
rdar://10422026
llvm-svn: 144258
|
|
|
|
|
|
| |
options to llvm-build, so the all-targets etc. components are defined properly.
llvm-svn: 144255
|
|
|
|
|
|
|
|
|
|
| |
handle defining the "magic" target related components (like native,
nativecodegen, and engine).
- We still require these components to be in the project (currently in
lib/Target) so that we have a place to document them and hopefully make it
more obvious that they are "magic".
llvm-svn: 144253
|
|
|
|
|
|
|
|
|
| |
change the generated library .a file name once we fully switch over, but
simplifies how we treat these targets without requiring more special casing
(since their library group name and the codegen library name currently map to
the same "llvm-config" style component name).
llvm-svn: 144251
|
|
|
|
|
|
| |
- Gives us a place to hang target specific metadata (like whether the target has a JIT).
llvm-svn: 144250
|
|
|
|
|
|
|
|
|
|
|
|
| |
The TII.foldMemoryOperand hook preserves implicit operands from the
original instruction. This is not what we want when those implicit
operands refer to the register being spilled.
Implicit operands referring to other registers are preserved.
This fixes PR11347.
llvm-svn: 144247
|
|
|
|
| |
llvm-svn: 144244
|
|
|
|
|
|
| |
rdar://10422955
llvm-svn: 144242
|
|
|
|
| |
llvm-svn: 144241
|
|
|
|
|
|
|
|
|
|
|
| |
store is dead.
Currently checks alignment and killing stores on a power of 2 boundary as this is likely
to trim the size of the earlier store without breaking large vector stores into scalar ones.
Fixes <rdar://problem/10140300>
llvm-svn: 144239
|
|
|
|
| |
llvm-svn: 144236
|
|
|
|
|
|
| |
issue from PR11319.
llvm-svn: 144216
|
|
|
|
|
|
| |
rdar://10418009
llvm-svn: 144213
|
|
|
|
| |
llvm-svn: 144212
|
|
|
|
| |
llvm-svn: 144211
|
|
|
|
| |
llvm-svn: 144194
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dragonegg self-host buildbot will recover (it is complaining about object
files differing between different build stages). Original commit message:
Add a hack to the scheduler to disable pseudo-two-address dependencies in
basic blocks containing calls. This works around a problem in which
these artificial dependencies can get tied up in calling seqeunce
scheduling in a way that makes the graph unschedulable with the current
approach of using artificial physical register dependencies for calling
sequences. This fixes PR11314.
llvm-svn: 144188
|
|
|
|
| |
llvm-svn: 144187
|
|
|
|
| |
llvm-svn: 144186
|
|
|
|
|
|
| |
entries.
llvm-svn: 144184
|
|
|
|
|
|
| |
Add AVX2 logical operations to list of replaceable instructions.
llvm-svn: 144179
|
|
|
|
| |
llvm-svn: 144176
|
|
|
|
| |
llvm-svn: 144174
|
|
|
|
|
|
| |
or not. Patch by Brendon Cahoon!
llvm-svn: 144173
|
|
|
|
| |
llvm-svn: 144172
|
|
|
|
| |
llvm-svn: 144169
|
|
|
|
|
|
|
| |
remove a fair number of unnecessary materialized constants.
rdar://10412592
llvm-svn: 144163
|
|
|
|
| |
llvm-svn: 144154
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During the initial RPO traversal of the basic blocks, remember the ones
that are incomplete because of back-edges from predecessors that haven't
been visited yet.
After the initial RPO, revisit all those loop headers so the incoming
DomainValues on the back-edges can be properly collapsed.
This will properly fix execution domains on software pipelined code,
like the included test case.
llvm-svn: 144151
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When merging two uncollapsed DomainValues, place a link to the active
DomainValue from the passive DomainValue. This allows old stale
references to the passive DomainValue to be updated to point to the
active DomainValue.
The new resolve() function finds the active DomainValue and updates the
pointer.
This change makes old live-out lists more useful since they may contain
uncollapsed DomainValues that have since been merged into other
DomainValues.
llvm-svn: 144149
|
|
|
|
| |
llvm-svn: 144148
|
|
|
|
|
|
| |
This allows clear() to be called on a DomainValue with references.
llvm-svn: 144147
|
|
|
|
|
|
|
|
| |
MCInsts.
Patch by Jack Carter.
llvm-svn: 144139
|
|
|
|
|
|
| |
*headdesk*
llvm-svn: 144138
|
|
|
|
|
|
| |
There is no need to involve the LiveRegs array and kill() any longer.
llvm-svn: 144133
|
|
|
|
|
|
| |
No functional change.
llvm-svn: 144132
|
|
|
|
|
|
|
|
|
|
| |
This new function will decrement the reference count, and collapse a
domain value when the last reference is gone.
This simplifies DomainValue reference counting, and decouples it from
the LiveRegs array.
llvm-svn: 144131
|