| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 163032
|
|
|
|
|
|
| |
instead of aliasing to "struct" which had some incorrect behaviour. Patch by David Robins.
llvm-svn: 163013
|
|
|
|
| |
llvm-svn: 162683
|
|
|
|
|
|
| |
Patch by Timur Iskhodzhanov!
llvm-svn: 162638
|
|
|
|
|
|
| |
block mangling
llvm-svn: 160783
|
|
|
|
| |
llvm-svn: 160780
|
|
|
|
| |
llvm-svn: 160709
|
|
|
|
|
|
| |
microsoft)
llvm-svn: 160667
|
|
|
|
|
|
| |
PR12785
llvm-svn: 160121
|
|
|
|
| |
llvm-svn: 159234
|
|
|
|
|
|
| |
function pointers PR13176,PR13177
llvm-svn: 159059
|
|
|
|
|
|
| |
arguments in a class specialization.
llvm-svn: 159056
|
|
|
|
|
|
| |
appropriate. Patch by João Matos!
llvm-svn: 158895
|
|
|
|
|
|
| |
a multi-line comment, fixing builds with e.g. -Werror=comment enabled.
llvm-svn: 158406
|
|
|
|
|
|
|
|
|
|
| |
- Support mangling virtual function tables (base tables need work on the
ManglerContext interface).
- Correct mangling of local scopes (i.e. functions and C++ methods).
- Replace every llvm_unreachable() for actually-reachable code with a
diagnostic.
llvm-svn: 158376
|
|
|
|
|
|
| |
in the presence of type sugar.
llvm-svn: 158184
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The integral APSInt value is now stored in a decomposed form and the backing
store for large values is allocated via the ASTContext. This way its not
leaked as TemplateArguments are never destructed when they are allocated in
the ASTContext. Since the integral data is immutable it is now shared between
instances, making copying TemplateArguments a trivial operation.
Currently getting the integral data out of a TemplateArgument requires creating
a new APSInt object. This is cheap when the value is small but can be expensive
if it's not. If this turns out to be an issue a more efficient accessor could
be added.
llvm-svn: 158150
|
|
|
|
| |
llvm-svn: 157959
|
|
|
|
|
|
|
| |
is negligible, but it makes the code clearer. Based on a suggestion by
Jordy Rose.
llvm-svn: 157601
|
|
|
|
|
|
| |
for this. Reported by Timur Iskhodzhanov.
llvm-svn: 157583
|
|
|
|
| |
llvm-svn: 157561
|
|
|
|
|
|
|
|
| |
bitwidth and signedness. Also rename the variable to reflect its purpose.
No test case - discovered during random code exploration.
llvm-svn: 157547
|
|
|
|
|
|
|
| |
the Microsoft Visual C++ ABI. Currently limited to type and integral
non-type arguments. Based on a patch by Timur Iskhodzhanov!
llvm-svn: 157524
|
|
|
|
|
|
|
| |
type-source information for its parameters. Don't crash when
mangling them in the MS C++ ABI. Patch by Timur Iskhodzhanov!
llvm-svn: 155879
|
|
|
|
|
|
|
|
|
|
| |
(Lex to AST).
The member variable is always "LangOpts" and the member function is always "getLangOpts".
Reviewed by Chris Lattner
llvm-svn: 152536
|
|
|
|
| |
llvm-svn: 145581
|
|
|
|
| |
llvm-svn: 142420
|
|
|
|
|
|
|
|
| |
casts in ARC.
No semantic analysis yet.
llvm-svn: 142208
|
|
|
|
|
|
| |
Lack of half FP was a regression compared to llvm-gcc.
llvm-svn: 142016
|
|
|
|
|
|
|
|
| |
committed at the moment to help support C++0x <atomic>, but it should be a solid base for implementing the full specification of C1x _Atomic.
Thanks to Jeffrey Yasskin for the thorough review!
llvm-svn: 141330
|
|
|
|
| |
llvm-svn: 140478
|
|
|
|
| |
llvm-svn: 140407
|
|
|
|
| |
llvm-svn: 140367
|
|
|
|
|
|
|
|
| |
LLVM.h imports
them into the clang namespace.
llvm-svn: 135852
|
|
|
|
|
|
|
|
| |
type that turns one type into another. This is used as the basis to
implement __underlying_type properly - with TypeSourceInfo and proper
behavior in the face of templates.
llvm-svn: 132017
|
|
|
|
|
|
|
| |
actually have to implement them, since in modern versions of MSVC they're
aliases to the standard C types.
llvm-svn: 130509
|
|
|
|
|
|
|
|
|
|
|
| |
bound
member function, i.e. something of the form 'x.f' where 'f' is a non-static
member function. Diagnose this in the general case. Some of the new diagnostics
are probably worse than the old ones, but we now get this right much more
universally, and there's certainly room for improvement in the diagnostics.
llvm-svn: 130239
|
|
|
|
| |
llvm-svn: 129567
|
|
|
|
|
|
| |
Luis Felipe Strano Moraes!
llvm-svn: 129559
|
|
|
|
|
|
|
|
|
|
| |
convention selection (AAPCS or
AAPCS+VFP), similar to fastcall / stdcall / whatevercall seen on x86.
In particular, all library functions should always be AAPCS regardless of floating point ABI used.
llvm-svn: 129534
|
|
|
|
|
|
|
|
|
|
|
|
| |
The idea is that you can create a VarDecl with an unknown type, or a
FunctionDecl with an unknown return type, and it will still be valid to
access that object as long as you explicitly cast it at every use. I'm
still going back and forth about how I want to test this effectively, but
I wanted to go ahead and provide a skeletal implementation for the LLDB
folks' benefit and because it also improves some diagnostic goodness for
placeholder expressions.
llvm-svn: 129065
|
|
|
|
|
|
| |
This reverts commit 126863.
llvm-svn: 126886
|
|
|
|
| |
llvm-svn: 126863
|
|
|
|
|
|
| |
This fixes PR 8738, 9060 and 9132.
llvm-svn: 126069
|
|
|
|
| |
llvm-svn: 125360
|
|
|
|
| |
llvm-svn: 125330
|
|
|
|
| |
llvm-svn: 125321
|
|
|
|
|
|
| |
thousand other things which were (generally inadvertantly) relying on that.
llvm-svn: 123814
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
involve template parameter packs at multiple template levels that
occur within the signatures members of class templates (and partial
specializations thereof). This is a work-in-progress that is deficient
in several ways, notably:
- It only works for template type parameter packs, but we need to
also support non-type template parameter packs and template template
parameter packs.
- It doesn't keep track of the lengths of the substituted argument
packs in the expansion, so it can't properly diagnose length
mismatches.
However, this is a concrete step in the right direction.
llvm-svn: 123425
|
|
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
|