| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
formulation that doesn't require set lookups or scanning a set.
llvm-svn: 60203
|
| |
|
|
|
|
|
| |
nothing to do with dead instruction elimination. No tests in
dejagnu depend on this, so I don't know what it was needed for.
llvm-svn: 60202
|
| |
|
|
|
|
| |
RecursivelyDeleteTriviallyDeadInstructions.
llvm-svn: 60196
|
| |
|
|
|
|
| |
PHIs dead if they are single-value.
llvm-svn: 60194
|
| |
|
|
|
|
| |
return a list of deleted instructions.
llvm-svn: 60193
|
| |
|
|
|
|
|
|
|
|
| |
wrappers around the interesting code and use an obscure iterator
abstraction that dates back many many years.
Move EraseDeadInstructions to Transforms/Utils and name it
RecursivelyDeleteTriviallyDeadInstructions.
llvm-svn: 60191
|
| |
|
|
|
|
| |
FindAvailableLoadedValue
llvm-svn: 60169
|
| |
|
|
|
|
| |
if it has it.
llvm-svn: 60167
|
| |
|
|
| |
llvm-svn: 60166
|
| |
|
|
| |
llvm-svn: 60164
|
| |
|
|
| |
llvm-svn: 60162
|
| |
|
|
|
|
| |
arbitrary integer width for the count.
llvm-svn: 59823
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
g++ -m32 -c -g -DIN_GCC -W -Wall -Wwrite-strings -Wmissing-format-attribute -fno-common -mdynamic-no-pic -DHAVE_CONFIG_H -Wno-unused -DTARGET_NAME=\"i386-apple-darwin9.5.0\" -I. -I. -I../../llvm-gcc.src/gcc -I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include -I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include -I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include -DENABLE_LLVM -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/../llvm.src/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -I. -I. -I../../llvm-gcc.src/gcc -I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include -I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include -I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include ../../llvm-gcc.src/gcc/llvm-types.cpp -o llvm-types.o
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemCpy(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1496: error: 'memcpy_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1496: error: 'memcpy_i64' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemMove(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1512: error: 'memmove_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1512: error: 'memmove_i64' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemSet(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1528: error: 'memset_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1528: error: 'memset_i64' is not a member of 'llvm::Intrinsic'
make[3]: *** [llvm-convert.o] Error 1
make[3]: *** Waiting for unfinished jobs....
rm fsf-funding.pod gcov.pod gfdl.pod cpp.pod gpl.pod gcc.pod
make[2]: *** [all-stage1-gcc] Error 2
make[1]: *** [stage1-bubble] Error 2
make: *** [all] Error 2
llvm-svn: 59809
|
| |
|
|
| |
llvm-svn: 59802
|
| |
|
|
| |
llvm-svn: 59745
|
| |
|
|
| |
llvm-svn: 59662
|
| |
|
|
|
|
| |
intrinsics. Let instcombiner do this job.
llvm-svn: 59659
|
| |
|
|
| |
llvm-svn: 59538
|
| |
|
|
| |
llvm-svn: 59454
|
| |
|
|
| |
llvm-svn: 59098
|
| |
|
|
| |
llvm-svn: 59093
|
| |
|
|
| |
llvm-svn: 59092
|
| |
|
|
| |
llvm-svn: 59077
|
| |
|
|
| |
llvm-svn: 59068
|
| |
|
|
| |
llvm-svn: 59039
|
| |
|
|
| |
llvm-svn: 59011
|
| |
|
|
|
|
|
|
| |
promotion.
- Eliminate uses after free and simplify tests.
Devang: Please check that this is still doing what you intended.
llvm-svn: 58887
|
| |
|
|
| |
llvm-svn: 58830
|
| |
|
|
| |
llvm-svn: 58826
|
| |
|
|
| |
llvm-svn: 58787
|
| |
|
|
| |
llvm-svn: 58742
|
| |
|
|
| |
llvm-svn: 58651
|
| |
|
|
| |
llvm-svn: 58486
|
| |
|
|
|
|
|
|
|
| |
function.
- This explicitly models the costs for functions which should
"always" or "never" be inlined. This fixes bugs where such costs
were not previously respected.
llvm-svn: 58450
|
| |
|
|
|
|
|
| |
I don't really see this as being needed, but there is little harm from doing
it.
llvm-svn: 58385
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 58352
|
| |
|
|
|
|
| |
that need it to require it by ID.
llvm-svn: 58238
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LargeBlockInfo, we can now dramatically simplify their implementation
and speed them up at the same time. Now the code has time proportional
to the number of uses of the alloca, not the size of the block.
This also eliminates code that tried to batch up different allocas which
are used in the same blocks, and eliminates the 'retry list' logic which
was baroque and no unneccesary. In addition to being a speedup for crazy
cases, this is also a nice cleanup:
PromoteMemoryToRegister.cpp | 270 +++++++++++++++-----------------------------
1 file changed, 96 insertions(+), 174 deletions(-)
llvm-svn: 58229
|
| |
|
|
|
|
|
|
|
| |
a trivial dense map. Use this in RewriteSingleStoreAlloca to
avoid aggressively rescanning blocks over and over again. This
fixes PR2925, speeding up mem2reg on the testcase in that bug
from 4.56s to 0.02s in a debug build on my machine.
llvm-svn: 58227
|
| |
|
|
|
|
|
|
|
|
|
| |
LoopPass*.
- Although less precise, this means they can be used in clients
without RTTI (who would otherwise need to include LoopPass.h, which
eventually includes things using dynamic_cast). This was the
simplest solution that presented itself, but I am happy to use a
better one if available.
llvm-svn: 58010
|
| |
|
|
| |
llvm-svn: 57320
|
| |
|
|
|
|
| |
Patch by Samuel Tardieu.
llvm-svn: 57291
|
| |
|
|
| |
llvm-svn: 57254
|
| |
|
|
|
|
| |
While hosting instruction check PHI node.
llvm-svn: 57025
|
| |
|
|
| |
llvm-svn: 56994
|
| |
|
|
|
|
|
| |
instead of hasWeakLinkage in a bunch of optimization
passes.
llvm-svn: 56782
|
| |
|
|
| |
llvm-svn: 56716
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g
This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.
This requires corresponding changes in llvm-gcc and clang.
llvm-svn: 56622
|
| |
|
|
| |
llvm-svn: 56527
|
| |
|
|
|
|
| |
Do not check isDeclaration() in hasNote(). It is clients' responsibility.
llvm-svn: 56524
|