- Mar 14, 2011
-
-
Rafael Espindola authored
llvm-svn: 127622
-
Rafael Espindola authored
is working around a bug in ld or if the new linker has a reasonable reason for wanting the string constant to be linker visible. llvm-svn: 127594
-
- Mar 09, 2011
-
-
John McCall authored
recomputation. llvm-svn: 127322
-
John McCall authored
simplify the logic of initializing function parameters so that we don't need both a variable declaration and a type in FunctionArgList. This also means that we need to propagate the CGFunctionInfo down in a lot of places rather than recalculating it from the FAL. There's more we can do to eliminate redundancy here, and I've left FIXMEs behind to do it. llvm-svn: 127314
-
- Mar 07, 2011
-
-
Devang Patel authored
DebugInfo can be enabled or disabled at function level (e.g. using an attribute). However, at module level it is determined by command line option and the state of command line option does not change during compilation. Make this layering explicit and fix accidental cases where the code generator was checking whether module has debug info enabled instead of checking whether debug info is enabled for this function or not. llvm-svn: 127165
-
Devang Patel authored
21 int main() { 22 A a; For example, here user would expect to stop at line 22, even if A's constructor leads to a call through CXXDefaultArgExpr. This fixes ostream-defined.exp regression from gdb testsuite. llvm-svn: 127164
-
- Mar 05, 2011
-
-
Benjamin Kramer authored
llvm-svn: 127082
-
- Feb 22, 2011
-
-
John McCall authored
llvm-svn: 126189
-
- Feb 19, 2011
-
-
John McCall authored
without defining them. This should be an error, but I'm paranoid about "uses" that end up not actually requiring a definition. I'll revisit later. Also, teach IR generation to not set internal linkage on variable declarations, just for safety's sake. Doing so produces an invalid module if the variable is not ultimately defined. Also, fix several places in the test suite where we were using internal functions without definitions. llvm-svn: 126016
-
- Feb 15, 2011
-
-
John McCall authored
- Have CGM precompute a number of commonly-used types - Have CGF copy that during initialization instead of recomputing them - Use TBAA info when initializing a parameter variable - Refactor the scalar ++/-- code llvm-svn: 125562
-
- Feb 11, 2011
-
-
Rafael Espindola authored
llvm-svn: 125321
-
- Feb 09, 2011
-
-
Douglas Gregor authored
and we later find the definition, make sure that we add the definition (not the declaration) to the list of deferred definitions to emit. Fixes PR8864. Thanks to Nick Lewycky for testing this patch out llvm-svn: 125157
-
- Feb 08, 2011
-
-
John McCall authored
Block{Function,Module} base class. Minor other refactorings. Fixed a few address-space bugs while I was there. llvm-svn: 125085
-
- Feb 05, 2011
-
-
Anders Carlsson authored
We now emit everything except unused implicit virtual member functions when building the vtable. llvm-svn: 124935
-
- Feb 04, 2011
-
-
Fariborz Jahanian authored
llvm-svn: 124837
-
Fariborz Jahanian authored
llvm-svn: 124835
-
Fariborz Jahanian authored
abi. llvm-svn: 124834
-
- Feb 03, 2011
-
-
Rafael Espindola authored
This reopens PR99114, but that one at least can be avoided with an #include. PR9130 cannot. llvm-svn: 124780
-
Anders Carlsson authored
is not defined in the current translation unit. Doing so lead to compile errors such as PR9114. Instead, when CodeGen is building the vtable, don't try to emit a definition for functions that aren't marked used in the current translation unit. Fixes PR9114. llvm-svn: 124768
-
- Feb 01, 2011
-
-
Rafael Espindola authored
llvm-svn: 124651
-
Rafael Espindola authored
* llvm-link would complains about mismatched visibility * If we produce a relocation with an available_externally, it is good to know that it is hidden. llvm-svn: 124633
-
- Jan 30, 2011
-
-
Anders Carlsson authored
current translation unit as available_externally. This helps devirtualize the second example in PR3100, comment 18: struct S { S() {}; virtual void xyzzy(); }; inline void foo(S *s) { s->xyzzy(); } void bar() { S s; foo(&s); } This involved four major changes: 1. In DefineUsedVTables, always mark virtual member functions as referenced for non-template classes and class template specializations. 2. In CodeGenVTables::ShouldEmitVTableInThisTU return true if optimizations are enabled, even if the key function is not implemented in this translation unit. We don't ever do this for code compiled with -fapple-kext, because we don't ever want to devirtualize virtual member function calls in that case. 3. Give the correct linkage for vtables where the key function is not defined. 4. Update the linkage for RTTI structures when necessary. llvm-svn: 124565
-
- Jan 29, 2011
-
-
Anders Carlsson authored
llvm-svn: 124550
-
Anders Carlsson authored
Set the visibility for typeinfo names. llvm-svn: 124548
-
Anders Carlsson authored
Change CodeGenModule::setTypeVisibility to take a TypeVisibilityKind enum instead of an "IsForRTTI" flag. llvm-svn: 124546
-
Anders Carlsson authored
llvm-svn: 124542
-
Anders Carlsson authored
llvm-svn: 124541
-
Anders Carlsson authored
llvm-svn: 124538
-
Anders Carlsson authored
Add a new function, to be used by CGRTTI, CGVTables and CGVTT (which each has their own copy of this code). llvm-svn: 124537
-
Ken Dyck authored
llvm-svn: 124536
-
Anders Carlsson authored
llvm-svn: 124529
-
- Jan 24, 2011
-
-
Anders Carlsson authored
Mark VTables and RTTI data linkonce_odr instead of weak_odr, with the exception of explicit template instantiations, which have to be weak_odr. This fixes PR6996. llvm-svn: 124089
-
- Jan 22, 2011
-
-
Benjamin Kramer authored
llvm-svn: 124029
-
- Jan 18, 2011
-
-
Rafael Espindola authored
llvm-svn: 123773
-
Ken Dyck authored
ASTContext::toCharUnitsFromBits() when converting from bit sizes to char units. llvm-svn: 123720
-
- Jan 17, 2011
-
-
Rafael Espindola authored
llvm-svn: 123681
-
Rafael Espindola authored
const NSConstantString *appKey = @"MyApp"; llvm-svn: 123680
-
Rafael Espindola authored
__builtin___CFStringMakeConstantString This fixes PR8993. A darwin expert might want to check that this is safe. llvm-svn: 123658
-
- Jan 13, 2011
-
-
Peter Collingbourne authored
process, perform a number of refactorings: - Move MiscNameMangler member functions to MangleContext - Remove GlobalDecl dependency from MangleContext - Make MangleContext abstract and move Itanium/Microsoft functionality to their own classes/files - Implement ASTContext::createMangleContext and have CodeGen use it No (intended) functionality change. llvm-svn: 123386
-
- Jan 11, 2011
-
-
Rafael Espindola authored
think it is safe to mark all type infos with unnamed_addr, but I am not sure. llvm-svn: 123275
-