| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
through the crack.
llvm-svn: 85160
|
|
|
|
| |
llvm-svn: 85131
|
|
|
|
| |
llvm-svn: 85125
|
|
|
|
| |
llvm-svn: 85087
|
|
|
|
|
|
|
|
| |
from other vectors.
If I can find it again, I will check in a testcase.
llvm-svn: 85032
|
|
|
|
|
|
|
| |
but also remove some methods that cause ambiguities, and generally
make CanQual<blah> more analogous to QualType.
llvm-svn: 84976
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qualified reference to a declaration that is not a non-static data
member or non-static member function, e.g.,
namespace N { int i; }
int j = N::i;
Instead, extend DeclRefExpr to optionally store the qualifier. Most
clients won't see or care about the difference (since
QualifierDeclRefExpr inherited DeclRefExpr). However, this reduces the
number of top-level expression types that clients need to cope with,
brings the implementation of DeclRefExpr into line with MemberExpr,
and simplifies and unifies our handling of declaration references.
Extended DeclRefExpr to (optionally) store explicitly-specified
template arguments. This occurs when naming a declaration via a
template-id (which will be stored in a TemplateIdRefExpr) that,
following template argument deduction and (possibly) overload
resolution, is replaced with a DeclRefExpr that refers to a template
specialization but maintains the template arguments as written.
llvm-svn: 84962
|
|
|
|
| |
llvm-svn: 84947
|
|
|
|
| |
llvm-svn: 84922
|
|
|
|
|
|
| |
both scalar and aggregates.
llvm-svn: 84910
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the DeclaratorInfo, one for semantic analysis), just build a single type whose
canonical type will reflect the semantic analysis (assuming the type is
well-formed, of course).
To make that work, make a few changes to the type system:
* allow the nominal pointee type of a reference type to be a (possibly sugared)
reference type. Also, preserve the original spelling of the reference type.
Both of these can be ignored on canonical reference types.
* Remove ObjCProtocolListType and preserve the associated source information on
the various ObjC TypeLocs. Preserve the spelling of protocol lists except in
the canonical form.
* Preserve some level of source type structure on parameter types, but
canonicalize on the canonical function type. This is still a WIP.
Drops code size, makes strides towards accurate source location representation,
slight (~1.7%) progression on Cocoa.h because of complexity drop.
llvm-svn: 84907
|
|
|
|
| |
llvm-svn: 84891
|
|
|
|
| |
llvm-svn: 84823
|
|
|
|
|
|
| |
the copy/dispose helpers as appropriate.
llvm-svn: 84817
|
|
|
|
| |
llvm-svn: 84800
|
|
|
|
| |
llvm-svn: 84789
|
|
|
|
| |
llvm-svn: 84787
|
|
|
|
|
|
| |
for base classe members as well. Test case enhanced for this.
llvm-svn: 84780
|
|
|
|
| |
llvm-svn: 84771
|
|
|
|
| |
llvm-svn: 84770
|
|
|
|
| |
llvm-svn: 84769
|
|
|
|
| |
llvm-svn: 84758
|
|
|
|
|
|
|
| |
generate the debug information for the first parameter to the block
invoke functions. WIP.
llvm-svn: 84737
|
|
|
|
| |
llvm-svn: 84719
|
|
|
|
|
|
| |
as argument to a function call. Removes a FIXME.
llvm-svn: 84694
|
|
|
|
|
|
| |
indirectly.
llvm-svn: 84686
|
|
|
|
|
|
| |
it was. Fixes codegen bug introduced yesterday.
llvm-svn: 84668
|
|
|
|
|
|
| |
shadowed by forward declared struct type.
llvm-svn: 84659
|
|
|
|
| |
llvm-svn: 84653
|
|
|
|
| |
llvm-svn: 84650
|
|
|
|
|
|
| |
readability.
llvm-svn: 84646
|
|
|
|
|
|
|
| |
WIP. I have yet to find the magic incantation to get the structure
type to be defined. If someone has a pointer, love to hear it.
llvm-svn: 84590
|
|
|
|
|
|
| |
PR5227.
llvm-svn: 84518
|
|
|
|
| |
llvm-svn: 84458
|
|
|
|
| |
llvm-svn: 84456
|
|
|
|
|
|
| |
temporaries created as on the RHS are destroyed before emitting the dtor for the temporary.
llvm-svn: 84451
|
|
|
|
|
|
| |
are updated.
llvm-svn: 84447
|
|
|
|
|
|
| |
trashing.
llvm-svn: 84439
|
|
|
|
| |
llvm-svn: 84438
|
|
|
|
|
|
|
|
|
| |
- strcmp -> ==
- OS.write(II->getName() ...) -> OS << II->getNameStr()
- Avoid std::string concatenation
- Use getNameStr().str() when an std::string is really needed.
llvm-svn: 84437
|
|
|
|
| |
llvm-svn: 84436
|
|
|
|
|
|
|
|
| |
form that LLVM code generators can turn into efficient code. For example,
int4 a, b, c;
a = (int4)(b.yzw, a.x)
llvm-svn: 84434
|
|
|
|
| |
llvm-svn: 84423
|
|
|
|
| |
llvm-svn: 84418
|
|
|
|
| |
llvm-svn: 84329
|
|
|
|
|
|
| |
anymore. In C++ it is bool.
llvm-svn: 84308
|
|
|
|
|
|
|
| |
FIXME in CGCXX.cpp that I would like Anders to
take a look at.
llvm-svn: 84265
|
|
|
|
| |
llvm-svn: 84255
|
|
|
|
| |
llvm-svn: 84237
|
|
|
|
|
|
|
|
|
|
| |
TypeLoc records for declarations; it should not be necessary to represent it
directly in the type system.
Please complain if you were using these classes and feel you can't replicate
previous functionality using the TypeLoc API.
llvm-svn: 84222
|