| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
enough to have this be useful.
llvm-svn: 144202
|
| |
|
|
|
|
|
|
| |
- Also, fix a refacto that left extra "all" component in list (this is now
defined in the groups explicitly)
- Reapply of r143879 now that Make should see needed deps.
llvm-svn: 144201
|
| |
|
|
| |
llvm-svn: 144198
|
| |
|
|
| |
llvm-svn: 144197
|
| |
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
1. Interface files (.mli) are installed before compiled interface
files (.cmi) to preserve timestamp relation.
2. install-meta should use $(OcamlDir) instead of $(ObjDir).
3. Declared some targets as .PHONY.
Patch by Christophe Raffalli.
llvm-svn: 144183
|
| |
|
|
|
|
| |
Add AVX2 logical operations to list of replaceable instructions.
llvm-svn: 144179
|
| |
|
|
|
|
|
|
|
| |
--enable-shared.
getPointerToNamedFunction might be indirect jump on Win32 --enable-shared.
FF 25 <disp32>: jmp *(pointer to IAT)
llvm-svn: 144178
|
| |
|
|
| |
llvm-svn: 144176
|
| |
|
|
| |
llvm-svn: 144174
|
| |
|
|
|
|
| |
or not. Patch by Brendon Cahoon!
llvm-svn: 144173
|
| |
|
|
| |
llvm-svn: 144172
|
| |
|
|
| |
llvm-svn: 144169
|
| |
|
|
|
|
| |
is reachable from the loop header.
llvm-svn: 144166
|
| |
|
|
|
|
| |
Should've read the patch a bit closer, sorry.
llvm-svn: 144164
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
and is different than the normal name.
llvm-svn: 144130
|
| |
|
|
|
|
|
|
|
|
| |
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: 144124
|
| |
|
|
|
|
| |
ldm or ldr pairs.
llvm-svn: 144123
|
| |
|
|
|
|
| |
No functional change intended.
llvm-svn: 144122
|
| |
|
|
| |
llvm-svn: 144121
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The old value may still be referenced by some live-out list, and we
don't wan't to collapse those instructions twice.
This fixes the "Can only swizzle VMOVD" assertion in some armv7 SPEC
builds.
<rdar://problem/10413292>
llvm-svn: 144117
|
| |
|
|
| |
llvm-svn: 144111
|
| |
|
|
|
|
| |
yet so it will currently never get used in real tests
llvm-svn: 144107
|
| |
|
|
| |
llvm-svn: 144105
|
| |
|
|
| |
llvm-svn: 144104
|
| |
|
|
|
|
|
|
| |
Add support for trimming constants to GetDemandedBits. This fixes some funky
constant generation that occurs when stores are expanded for targets that don't
support unaligned stores natively.
llvm-svn: 144102
|
| |
|
|
|
|
| |
When this field is true it means that the load is from constant (runt-time or compile-time) and so can be hoisted from loops or moved around other memory accesses
llvm-svn: 144100
|
| |
|
|
| |
llvm-svn: 144099
|
| |
|
|
| |
llvm-svn: 144095
|
| |
|
|
|
|
|
|
|
|
|
|
| |
implements unaligned loads and stores with assembler macro-instructions
ulw, usw, ulh, ulhu, ush, and this patch emits corresponding instructions
instead of these macros. Since each unaligned load/store is expanded
into two corresponding loads/stores where offset for second load/store is
modified by +3 (for words) or +1 (for halfwords).
Patch by Petar Jovanovic and Sasa Stankovic.
llvm-svn: 144081
|
| |
|
|
|
|
| |
optimize out "static" scope w/o "inline".
llvm-svn: 144080
|
| |
|
|
| |
llvm-svn: 144079
|
| |
|
|
| |
llvm-svn: 144076
|
| |
|
|
| |
llvm-svn: 144071
|
| |
|
|
|
|
|
| |
-std=gnu89 -pedantic.
FIXME: Should configure detect one?
llvm-svn: 144070
|