- Feb 13, 2009
-
-
Mike Stump authored
llvm-svn: 64486
-
Mike Stump authored
llvm-svn: 64481
-
Mike Stump authored
llvm-svn: 64473
-
Mike Stump authored
llvm-svn: 64452
-
Mike Stump authored
llvm-svn: 64451
-
Douglas Gregor authored
ABI to the CodeGen library. Since C++ code-generation is so incomplete, we can't exercise much of this mangling code. However, a few smoke tests show that it's doing the same thing as GCC. When C++ codegen matures, we'll extend the ABI tester to verify name-mangling as well, and complete the implementation here. At this point, the major client of name mangling is in the uses of the new "overloadable" attribute in C, which allows overloading. Any "overloadable" function in C (or in an extern "C" block in C++) will be mangled the same way that the corresponding C++ function would be mangled. llvm-svn: 64413
-
- Feb 12, 2009
-
-
Anders Carlsson authored
llvm-svn: 64387
-
Daniel Dunbar authored
llvm-svn: 64380
-
- Feb 06, 2009
-
-
Daniel Dunbar authored
llvm-svn: 63952
-
- Feb 04, 2009
-
-
Daniel Dunbar authored
- Emits all declarations, even unused (static) ones. - Useful when doing minimization of codegen problems (otherwise problems localized to a static function aren't minimized well). llvm-svn: 63776
-
- Feb 03, 2009
-
-
Daniel Dunbar authored
- Inefficient & leaks memory currently, will be cleaned up subsequently. llvm-svn: 63567
-
- Feb 02, 2009
-
-
Daniel Dunbar authored
- Lift CGFunctionInfo creation above ReturnTypeUsesSret and EmitFunction{Epi,Pro}log. llvm-svn: 63553
-
- Jan 31, 2009
-
-
Daniel Dunbar authored
function/call info. llvm-svn: 63466
-
- Jan 23, 2009
-
-
Fariborz Jahanian authored
for the new meta-data. llvm-svn: 62806
-
- Jan 21, 2009
-
-
Fariborz Jahanian authored
the new ObjC's abi. llvm-svn: 62721
-
- Jan 16, 2009
-
-
Chris Lattner authored
"logical" location, refer to the "instantiation" location. llvm-svn: 62316
-
- Jan 13, 2009
-
-
Daniel Dunbar authored
llvm-svn: 62139
-
- Jan 08, 2009
-
-
Fariborz Jahanian authored
gen issue fix. llvm-svn: 61901
-
- Jan 05, 2009
-
-
Sebastian Redl authored
llvm-svn: 61747
-
- Jan 04, 2009
-
-
Anders Carlsson authored
When emitting the static variables we need to make sure that the order is preserved. Fix this by making StaticDecls a std::list which has O(1) random removal. llvm-svn: 61621
-
- Dec 26, 2008
-
-
Anton Korobeynikov authored
Patch by Ilya Okonsky llvm-svn: 61437
-
- Dec 11, 2008
-
-
Douglas Gregor authored
and separates lexical name lookup from qualified name lookup. In particular: * Make DeclContext the central data structure for storing and looking up declarations within existing declarations, e.g., members of structs/unions/classes, enumerators in C++0x enums, members of C++ namespaces, and (later) members of Objective-C interfaces/implementations. DeclContext uses a lazily-constructed data structure optimized for fast lookup (array for small contexts, hash table for larger contexts). * Implement C++ qualified name lookup in terms of lookup into DeclContext. * Implement C++ unqualified name lookup in terms of qualified+unqualified name lookup (since unqualified lookup is not purely lexical in C++!) * Limit the use of the chains of declarations stored in IdentifierInfo to those names declared lexically. * Eliminate CXXFieldDecl, collapsing its behavior into FieldDecl. (FieldDecl is now a ScopedDecl). * Make RecordDecl into a DeclContext and eliminates its Members/NumMembers fields (since one can just iterate through the DeclContext to get the fields). llvm-svn: 60878
-
- Dec 09, 2008
-
-
Fariborz Jahanian authored
the synthesis is in an implementation of s subclass of a super class where the property has been declared. llvm-svn: 60792
-
Chris Lattner authored
llvm-svn: 60778
-
- Dec 03, 2008
-
-
Anders Carlsson authored
llvm-svn: 60462
-
- Nov 24, 2008
-
-
Chris Lattner authored
uses of getName() with uses of getDeclName(). This upgrades a bunch of diags to take DeclNames instead of std::strings. This also tweaks a couple of diagnostics to be cleaner and changes CheckInitializerTypes/PerformInitializationByConstructor to pass around DeclarationNames instead of std::strings. llvm-svn: 59947
-
- Nov 21, 2008
-
-
Chris Lattner authored
llvm-svn: 59824
-
Chris Lattner authored
llvm-svn: 59821
-
Sanjiv Gupta authored
llvm-svn: 59806
-
- Nov 19, 2008
-
-
Sanjiv Gupta authored
llvm-svn: 59613
-
Daniel Dunbar authored
llvm-svn: 59594
-
- Nov 18, 2008
-
-
Chris Lattner authored
are formed. In particular, a diagnostic with all its strings and ranges is now packaged up and sent to DiagnosticClients as a DiagnosticInfo instead of as a ton of random stuff. This has the benefit of simplifying the interface, making it more extensible, and allowing us to do more checking for things like access past the end of the various arrays passed in. In addition to introducing DiagnosticInfo, this also substantially changes how Diagnostic::Report works. Instead of being passed in all of the info required to issue a diagnostic, Report now takes only the required info (a location and ID) and returns a fresh DiagnosticInfo *by value*. The caller is then free to stuff strings and ranges into the DiagnosticInfo with the << operator. When the dtor runs on the DiagnosticInfo object (which should happen at the end of the statement), the diagnostic is actually emitted with all of the accumulated information. This is a somewhat tricky dance, but it means that the accumulated DiagnosticInfo is allowed to keep pointers to other expression temporaries without those pointers getting invalidated. This is just the minimal change to get this stuff working, but this will allow us to eliminate the zillions of variant "Diag" methods scattered throughout (e.g.) sema. For example, instead of calling: Diag(BuiltinLoc, diag::err_overload_no_match, typeNames, SourceRange(BuiltinLoc, RParenLoc)); We will soon be able to just do: Diag(BuiltinLoc, diag::err_overload_no_match) << typeNames << SourceRange(BuiltinLoc, RParenLoc)); This scales better to support arbitrary types being passed in (not just strings) in a type-safe way. Go operator overloading?! llvm-svn: 59502
-
Chris Lattner authored
strings instead of array of strings. This reduces string copying in some not-very-important cases, but paves the way for future improvements. llvm-svn: 59494
-
- Nov 15, 2008
-
-
Anders Carlsson authored
llvm-svn: 59372
-
- Nov 11, 2008
-
-
Anton Korobeynikov authored
Patch by Ilya Okonsky! llvm-svn: 59080
-
- Nov 04, 2008
-
-
Chris Lattner authored
llvm-svn: 58704
-
- Oct 28, 2008
-
-
Daniel Dunbar authored
in the driver (this means we no longer run the verifier per function, however). llvm-svn: 58307
-
Daniel Dunbar authored
llvm-svn: 58304
-
- Oct 17, 2008
-
-
Daniel Dunbar authored
(first) global holding the string. - No functionality change. llvm-svn: 57736
-
Daniel Dunbar authored
simplifies clients. Also, add assert that RegionStack is empty when the CGDebugInfo is destroyed. llvm-svn: 57684
-