- Nov 13, 2009
-
-
Devang Patel authored
llvm-svn: 87069
-
Rafael Espindola authored
Switch to smallvector. Also fix issue with using unsigend for MaxSplit. llvm-svn: 87068
-
Dale Johannesen authored
PPC is such a target; make it work. llvm-svn: 87060
-
Victor Hernandez authored
llvm-svn: 87059
-
Rafael Espindola authored
llvm-svn: 87058
-
Jim Grosbach authored
llvm-svn: 87056
-
Jim Grosbach authored
llvm-svn: 87054
-
Daniel Dunbar authored
llvm-svn: 87049
-
David Greene authored
Fix a bootstrap failure. Provide special isLoadFromStackSlotPostFE and isStoreToStackSlotPostFE interfaces to explicitly request checking for post-frame ptr elimination operands. This uses a heuristic so it isn't reliable for correctness. llvm-svn: 87047
-
Owen Anderson authored
llvm-svn: 87042
-
Bill Wendling authored
llvm-svn: 87040
-
- Nov 12, 2009
-
-
Bill Wendling authored
llvm-svn: 87036
-
Chris Lattner authored
llvm-svn: 87035
-
David Greene authored
Do some cleanups suggested by Chris. llvm-svn: 87034
-
Daniel Dunbar authored
strings. llvm-svn: 87031
-
David Greene authored
Set the ReloadReuse AsmPrinter flag where appropriate. llvm-svn: 87030
-
Daniel Dunbar authored
llvm-svn: 87029
-
David Greene authored
Fix a build error by providing a missing enum value. llvm-svn: 87028
-
David Greene authored
Make the MachineFunction argument of getFrameRegister const. This also fixes a build error. llvm-svn: 87027
-
David Greene authored
Add hasLoadFromStackSlot and hasStoreToStackSlot to return whether a machine instruction loads or stores from/to a stack slot. Unlike isLoadFromStackSlot and isStoreFromStackSlot, the instruction may be something other than a pure load/store (e.g. it may be an arithmetic operation with a memory operand). This helps AsmPrinter determine when to print a spill/reload comment. This is only a hint since we may not be able to figure this out in all cases. As such, it should not be relied upon for correctness. Implement for X86. Return false by default for other architectures. llvm-svn: 87026
-
Daniel Dunbar authored
llvm-svn: 87025
-
Daniel Dunbar authored
llvm-svn: 87024
-
Bill Wendling authored
and don't assume that the call doesn't throw. It would be nice if there were a way to determine which is the callee and which is a parameter. In practice, the architecture we care about normally only have one operand for a call instruction (x86 and arm). llvm-svn: 87023
-
David Greene authored
Add a bool flag to StackObjects telling whether they reference spill slots. The AsmPrinter will use this information to determine whether to print a spill/reload comment. Remove default argument values. It's too easy to pass a wrong argument value when multiple arguments have default values. Make everything explicit to trap bugs early. Update all targets to adhere to the new interfaces.. llvm-svn: 87022
-
Benjamin Kramer authored
StringsEqualNoCase (from StringExtras.h) to it. llvm-svn: 87020
-
David Greene authored
Make FixedStackPseudoSourceValue a first-class PseudoSourceValue by making it visible to clients and adding LLVM-style cast capability. This will be used by AsmPrinter to determine when to emit spill comments for an instruction. llvm-svn: 87019
-
David Greene authored
Add AsmPrinter comment flags to machine instructions so that AsmPrinter can emit extra information in comments. llvm-svn: 87018
-
David Greene authored
Add comment flags so AsmPrinter can output additional information when emitting comments. These flags carry semantic information not otherwise easily derivable from the IR text. llvm-svn: 87016
-
David Goodwin authored
llvm-svn: 87015
-
Devang Patel authored
"Attach debug info with llvm instructions" mode was enabled a month ago. Now make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes. llvm-svn: 87014
-
Dan Gohman authored
they really are not duplicable. llvm-svn: 87009
-
Benjamin Kramer authored
llvm-svn: 87002
-
Jim Grosbach authored
to directly follow the jump table. Move the layout changes to prior to any constant island handling. llvm-svn: 86999
-
Jim Grosbach authored
Clean up testcase a bit. Simplify case blocks and adjust switch instruction to not take an undefined value as input. llvm-svn: 86997
-
Nuno Lopes authored
llvm-svn: 86987
-
Nuno Lopes authored
llvm-svn: 86986
-
Benjamin Kramer authored
llvm-svn: 86984
-
Gabor Greif authored
llvm-svn: 86980
-
Chris Lattner authored
running IPSCCP early, and we run functionattrs interlaced with the inliner, we often (particularly for small or noop functions) completely propagate all of the information about a call to its call site in IPSSCP (making a call dead) and functionattrs is smart enough to realize that the function is readonly (because it is interlaced with inliner). To improve compile time and make the inliner threshold more accurate, realize that we don't have to inline dead readonly function calls. Instead, just delete the call. This happens all the time for C++ codes, here are some counters from opt/llvm-ld counting the number of times calls were deleted vs inlined on various apps: Tramp3d opt: 5033 inline - Number of call sites deleted, not inlined 24596 inline - Number of functions inlined llvm-ld: 667 inline - Number of functions deleted because all callers found 699 inline - Number of functions inlined 483.xalancbmk opt: 8096 inline - Number of call sites deleted, not inlined 62528 inline - Number of functions inlined llvm-ld: 217 inline - Number of allocas merged together 2158 inline - Number of functions inlined 471.omnetpp: 331 inline - Number of call sites deleted, not inlined 8981 inline - Number of functions inlined llvm-ld: 171 inline - Number of functions deleted because all callers found 629 inline - Number of functions inlined Deleting a call is much faster than inlining it, and is insensitive to the size of the callee. :) llvm-svn: 86975
-
Evan Cheng authored
llvm-svn: 86972
-