| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 34717
|
| |
|
|
|
|
|
| |
Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and
PackedTyID -> VectorTyID. No functional changes.
llvm-svn: 34293
|
| |
|
|
|
|
|
|
|
|
| |
While preparing http://llvm.org/PR1198 I noticed several asserts
protecting unprepared code from i128 types that weren't actually failing
when they should because they were written as assert("foo") instead of
something like assert(0 && "foo"). This patch fixes all the cases that a
quick grep found.
llvm-svn: 34267
|
| |
|
|
|
|
|
|
|
| |
std::map<std::string, Value*>
as its main datastructure. There are many improvements yet to be made, but
this speeds up opt --std-compile-opts on 447.dealII by 7.3%.
llvm-svn: 34193
|
| |
|
|
|
|
| |
the bc reader by 0.8%. Deemed "not worth it"
llvm-svn: 34169
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The bcreader counts on "primitive" types being inserted before they are
referenced in other types. With recent changes to the bcwriter, this fact
became exposed since IntegerType is no longer "primitive". We can no longer
count on all IntegerTypes being inserted early. This patch modifies
getOrCreateTypeSlot to insert any sub-type that can't possibly recurse
before we create the slot for the type. This has the benefit of reducing
the number of OpaqueType objects the reader needs to deal with.
llvm-svn: 34147
|
| |
|
|
| |
llvm-svn: 34146
|
| |
|
|
|
|
|
|
|
|
| |
vector<vector> to avoid allocations. This speeds up bcwriting of 447.dealII
from 0.8276 to 0.7637s (8.4%).
This concludes this round of proding the bcwriter into submission. Final
speedup from 24.4s to 0.7637s (32x).
llvm-svn: 34142
|
| |
|
|
|
|
|
| |
of memory, through a combination of DenseMap and SmallVector. This speeds
up bcwriter on 447.dealII from 1.31s to 0.82s (60% faster).
llvm-svn: 34141
|
| |
|
|
|
|
|
| |
*slightly* less abusive of memory. This speeds up the bcwriter from
1.83s to 1.32s (39% faster) on 447.dealII.
llvm-svn: 34140
|
| |
|
|
| |
llvm-svn: 34139
|
| |
|
|
|
|
| |
of 447.dealII from 3.3s to 1.8s (80% faster).
llvm-svn: 34138
|
| |
|
|
| |
llvm-svn: 34136
|
| |
|
|
|
|
| |
speeds up bcwriting of 447.dealII by 40%, from 4.63s to 3.32s.
llvm-svn: 34135
|
| |
|
|
|
|
|
|
| |
is inserted into the table, it remembers that the value needs to be popped
off. This makes purgeFunction much faster, speeding up bcwriting of 447.dealII
from 6.8->4.6s (47%).
llvm-svn: 34133
|
| |
|
|
|
|
|
| |
per function. This speeds up bcwriting on 447.dealII from 10.16s to 6.81s
(49%).
llvm-svn: 34132
|
| |
|
|
|
|
|
| |
function-local values. This speeds up bcwriting a small 2.2% (10.384->10.156s
on 447.dealII), but paves the way for more important changes.
llvm-svn: 34131
|
| |
|
|
| |
llvm-svn: 34130
|
| |
|
|
| |
llvm-svn: 34129
|
| |
|
|
|
|
| |
clients. Same for getTypeSlot.
llvm-svn: 34128
|
| |
|
|
|
|
| |
iteration stuff.
llvm-svn: 34127
|
| |
|
|
| |
llvm-svn: 34126
|
| |
|
|
| |
llvm-svn: 34125
|
| |
|
|
|
|
| |
caller.
llvm-svn: 34124
|
| |
|
|
| |
llvm-svn: 34123
|
| |
|
|
| |
llvm-svn: 34122
|
| |
|
|
| |
llvm-svn: 34121
|
| |
|
|
| |
llvm-svn: 34120
|
| |
|
|
|
|
| |
there.
llvm-svn: 34119
|
| |
|
|
| |
llvm-svn: 34118
|
| |
|
|
| |
llvm-svn: 34117
|
| |
|
|
| |
llvm-svn: 34116
|
| |
|
|
| |
llvm-svn: 34115
|
| |
|
|
| |
llvm-svn: 34114
|
| |
|
|
|
|
| |
for types.
llvm-svn: 34113
|
| |
|
|
|
|
| |
generate errors about being unable to resolve overloaded type.
llvm-svn: 34103
|
| |
|
|
| |
llvm-svn: 34091
|
| |
|
|
| |
llvm-svn: 34086
|
| |
|
|
|
|
| |
scope.
llvm-svn: 34085
|
| |
|
|
|
|
|
|
|
|
|
| |
2. All function-level constants are now incorporated into the module-level
constant pool, since the compaction table was removed. Eliminate extra
work to check for them.
This speeds up the bcwriter from 24.4s to 13.1s on 447.dealII and .73 -> .56s
on kc++ in a release build.
llvm-svn: 34084
|
| |
|
|
|
|
|
|
|
|
| |
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.
llvm-svn: 33918
|
| |
|
|
|
|
| |
confusion with external linkage types.
llvm-svn: 33663
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
outweight its computational costs. This patch removes all compaction
table handling from the bcreader and bcwriter. For the record, here's the
difference betweeen having and not having compaction tables for some tests:
Test With Without Size Chg
Olden/mst 5,602 5,598 +0.1%
viterbi 18,026 17,795 +1.3%
obsequi 162,133 166,663 -2.8%
burg 224,090 228,148 -1.8%
kimwitu++ 4,933,263 5,121,159 -3.8%
176.gcc 8,470,424 9,141,539 -7.3%
It seems that it is more beneficial to larger files, but even on the largest
test case we have (176.gcc) it only amounts ot an I/O saving of 7.3%.
llvm-svn: 33661
|
| |
|
|
| |
llvm-svn: 33596
|
| |
|
|
|
|
|
| |
Remove the Endianness and PointerSize fields from the ModuleHeader and
replace it with the DataLayout field.
llvm-svn: 33529
|
| |
|
|
| |
llvm-svn: 33347
|
| |
|
|
|
|
| |
Implement reading and writing of the Module's data layout string.
llvm-svn: 33346
|
| |
|
|
|
|
|
|
|
| |
rename Type::getIntegralTypeMask to Type::getIntegerTypeMask.
This makes naming much more consistent. For example, there are now no longer any
instances of IntegerType that are not considered isInteger! :)
llvm-svn: 33225
|
| |
|
|
|
|
| |
indices with other bit sizes yet.
llvm-svn: 33167
|
| |
|
|
| |
llvm-svn: 33156
|