- Nov 12, 2009
-
-
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
-
Mike Stump authored
Refine the VTT entries for virtual bases to refer to the complete object's vtable instead of constructor vtables. Refine the AddressPoint calculations for VTT entries for virtual bases. llvm-svn: 87021
-
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
-
Fariborz Jahanian authored
message to 'super'. Fixes radar 7205866. llvm-svn: 87017
-
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
-
Daniel Dunbar authored
llvm-svn: 87011
-
Douglas Gregor authored
non-type template parameters or constants of pointer-to-member type. Once checked, be sure to retain those pointer-to-member constants as expressions if they are dependent, or as declarations if they are not dependent. llvm-svn: 87010
-
Dan Gohman authored
they really are not duplicable. llvm-svn: 87009
-
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 locations and types. llvm-svn: 87007
-
Benjamin Kramer authored
llvm-svn: 87002
-
Devang Patel authored
llvm-svn: 87001
-
Douglas Gregor authored
member type (e.g., T Class::*Member), build a pointer-to-member constant expression. Previously, we we just building a simple declaration reference expression, which meant that the expression was not treated as a pointer to member. llvm-svn: 87000
-
Jim Grosbach authored
to directly follow the jump table. Move the layout changes to prior to any constant island handling. llvm-svn: 86999
-
Chandler Carruth authored
This resolves the layering violation where CodeGen depended on Frontend. llvm-svn: 86998
-
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
-
Anders Carlsson authored
llvm-svn: 86996
-
Douglas Gregor authored
in "if" statements like: if (CanQual<ReferenceType> RefType = T.getAs<ReferenceType>()) Thanks to Clang for pointing out this mistake :) llvm-svn: 86995
-
Anders Carlsson authored
llvm-svn: 86994
-
Douglas Gregor authored
- Comparing template parameter lists to determine if we have a redeclaration - Comparing template parameter lists to determine if we have equivalent template template parameters - Comparing template parameter lists to determine whether a template template argument is valid for a given template template parameter. Previously, we did not distinguish between the last two cases, which got us into trouble when we were looking for exact type matches between the types of non-type template parameters that were dependent types. Now we do, so we properly delay checking of template template arguments until instantiation time. Also, fix an accidental fall-through in a case statement that was causing crashes. llvm-svn: 86992
-
Daniel Dunbar authored
llvm-svn: 86990
-
Douglas Gregor authored
llvm-svn: 86989
-
Daniel Dunbar authored
llvm-svn: 86988
-
Nuno Lopes authored
llvm-svn: 86987
-
Nuno Lopes authored
llvm-svn: 86986
-
Benjamin Kramer authored
llvm-svn: 86984
-
Benjamin Kramer authored
llvm-svn: 86983
-
Gabor Greif authored
llvm-svn: 86980
-
Zhongxing Xu authored
llvm-svn: 86979
-
Zhongxing Xu authored
llvm-svn: 86978
-
Chris Lattner authored
Ken Dyck! "This adds definitions for types of 8-bit multiples from 8 to 64 to stdint.h and rationalizes the selection of types for the exact-width definitions in InitPreprocessor.cpp." llvm-svn: 86977
-
Chris Lattner authored
into TargetInfo, just derive this based on the underlying type. This prevents them from getting out of synch, patch by Ken Dyck! llvm-svn: 86976
-
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
-
Evan Cheng authored
cannot be folded into target cmp instruction. - Avoid a phase ordering issue where early cmp optimization would prevent the later count-to-zero optimization. - Add missing checks which could cause LSR to reuse stride that does not have users. - Fix a bug in count-to-zero optimization code which failed to find the pre-inc iv's phi node. - Remove, tighten, loosen some incorrect checks disable valid transformations. - Quite a bit of code clean up. llvm-svn: 86969
-
Daniel Dunbar authored
llvm-svn: 86968
-
Daniel Dunbar authored
llvm-svn: 86967
-