aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2003-06-28Improve the make ruleChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6948 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Propagate globals graph from the local to bu to td globals graphs. ThisChris Lattner
fixes bug: DSGraph/buglobals.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6947 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Drop references to globals who do exist in the globals graph, but are neverChris Lattner
read or written to. Keep track of how many times this happens. This should be good for deleting things like references to type information in C++ classes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6946 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Avoid double negativesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6945 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add new DSGraph::ScalarMapTy typedef to avoid pulling representation issuesChris Lattner
into callers of getScalarMap git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6944 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add new 'isComplete' methodChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6943 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6942 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28New pass to perform DSA based optimizations. Initially we just support turningChris Lattner
globals into constants if we can prove it's safe git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6941 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28New makefile for Dsgraph testsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6940 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add DSGraph to the testsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6939 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Avoid printing out huge structures or arrays if they are just filled with zerosChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6938 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add support for a new zeroinitializer token which can be used to get rid ofChris Lattner
huge arrays of zero initialized values git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6937 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add test for new zeroinitializer tokenChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6936 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28jmp_buf is really a pointer type that is passed around...Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6935 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add support for the Invoke instruction!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6934 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28New testcase for invoke supportChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6933 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Preserve compatibility with non-gcc compilersChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6932 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Fix bug: CBackend/2003-06-28-LinkOnceGlobalVars.llxChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6931 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6930 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Allow the inlining limit to be controlled from the command line!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6929 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28Add support for 'unsigned' command line argumentsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6928 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27Added code to the clean rule that deletes files placed in the source directory.John Criswell
These files interfer with a second build attempt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6927 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27Added the OPTIONAL_DIRS variable for specifying optional directories to build.John Criswell
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6926 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27New testcase that crashes the cfeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6925 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27Nice tasty llc fixes. These should fix LLC for x86 for everything inBrian Gaeke
SingleSource except oopack and Oscar. (Sorry, Oscar.) include/llvm/Target/TargetInstrInfo.h: Remove virtual print method. Add accessors for ImplicitUses/Defs. lib/Target/TargetInstrInfo.cpp: Remove virtual print method. If you really wanted this, just use MI->print(O, TM); instead... lib/Target/X86: FloatingPoint.cpp: ...like this. X86InstrInfo.h: Remove virtual print method. Define the PrintImplUses target-specific flag bit. X86InstrInfo.def: Add the PrintImplUses flag to all the instructions which implicitly use CL, because the assembler needs to see the CL in order to generate the right instruction. Printer.cpp: Ditch fnIndex at Chris's request. Now we use CurrentFnName to name constants in the constant pool for each function instead. This avoids keeping state between runOnMachineFunction() invocations, which is a no-no. Having MangledGlobals be global is a bogon I'd like to get rid of too, but making it a static member of Printer causes link errors (why???). Make NumberForBB into a member of Printer instead of a global, too. Make printOp and printMemReference into methods of Printer. X86InstrInfo::print is now Printer::printMachineInstruction, because TargetInstrInfo::print is history. (Because of this, we have to qualify the names of some TargetInstrInfo methods we call.) Print out the ImplicitUses field of any instruction we print that has the PrintImplUses bit set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6924 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Here are the notes from our Reoptimizer meetings.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6923 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Modify script to support checkins on branchesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6921 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Number constants from constant pool as CPIf_i where f is the function indexBrian Gaeke
and i is the constant pool index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6920 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Add a testcase to ensure that ctor/dtor attributes work in CChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6919 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Add support to globaldce for deleting dead function prototypesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6918 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26When internalizing global ctor/dtor list, also mark it constant. This is ↵Chris Lattner
gross, but until DSA is working all of the time and is totally reliable, we do this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6917 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Run the simplify CFG pass after instcombine which has the effect of deletingChris Lattner
ALL of the global ctor/dtor stuff if it is not used! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6916 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26New variable which is just the GCCLD toolChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6914 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Implement more aggressive folding of constant GEP instructionsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6913 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Add support for elimination of load instruction from global constantsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6912 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26add tests for elimination of loadsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6911 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Move the instcombine pass before globaldce, so that if globals are made dead ↵Chris Lattner
by instcombine, that they can be deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6910 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26Don't register the destructors if the list is emptyChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6909 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Integrate the C writer's name mangler.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6908 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25First draft of X86 LLC backend. This should be OK for small programs likeBrian Gaeke
Shootout, but it has some issues with bigger programs. Work in progress. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6907 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Add test for instcombine -1*X -> -XChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6905 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Instcombine: X * -1 -> -XChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6904 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Fix bug: LevelRaise/2003-06-25-ExprAnalysis.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6902 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Fix bug: Mem2Reg/2003-06-26-IterativePromote.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6901 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6900 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Remove completed tasksChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6899 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25- Fixed name mangling conditions to handle 'linkonce' linkage type. InJoel Stanley
particular, name mangling for GlobalValues only occurs when the linkage type is internal or when the name must be mangled to avoid a collision. See comments in CWriter::getValueName for more information. - 'inline' keyword is now emitted for functions with 'linkonce' linkage type. - Fixed typos. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6898 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Try to run cleanups even if nothing was modified in the preview passesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6897 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25Run dead arg elimination, and tell it that it's ok to hack up non-internal ↵Chris Lattner
functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6896 91177308-0d34-0410-b5e6-96231b3b80d8