| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
| |
declaration for the type then go ahead and use that, it's still smaller
than creating an all new derived type.
Part of rdar://10335756 and others.
llvm-svn: 146779
|
|
|
|
|
|
|
| |
the other helper functions, since we already differentiated the cases it was
testing between. No functionality change.
llvm-svn: 144167
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Start handling debug line and scope information better:
Migrate most of the location setting within the larger API in CGDebugInfo and
update a lot of callers.
Remove the existing file/scope change machinery in UpdateLineDirectiveRegion
and replace it with DILexicalBlockFile usage.
Finishes off the rest of rdar://10246360
after fixing a few bugs that were exposed in gdb testsuite testing.
llvm-svn: 141893
|
|
|
|
| |
llvm-svn: 141796
|
|
|
|
|
|
|
|
|
|
|
| |
Migrate most of the location setting within the larger API in CGDebugInfo and
update a lot of callers.
Remove the existing file/scope change machinery in UpdateLineDirectiveRegion
and replace it with DILexicalBlockFile usage.
Finishes off the rest of rdar://10246360
llvm-svn: 141732
|
|
|
|
|
|
|
|
|
|
|
| |
- Remodel Expr::EvaluateAsInt to behave like the other EvaluateAs* functions,
and add Expr::EvaluateKnownConstInt to capture the current fold-or-assert
behaviour.
- Factor out evaluation of bitfield bit widths.
- Fix a few places which would evaluate an expression twice: once to determine
whether it is a constant expression, then again to get the value.
llvm-svn: 141561
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
correspond to.
llvm-svn: 140740
|
|
|
|
|
|
| |
exist anymore.
llvm-svn: 140739
|
|
|
|
|
|
|
| |
point in the code. Ensures that we don't miss any places and the
check is reasonably cheap.
llvm-svn: 140737
|
|
|
|
|
|
| |
a translation unit.
llvm-svn: 137674
|
|
|
|
|
|
|
| |
some common llvm types: stringref and smallvector. This cleans up the codebase
quite a bit.
llvm-svn: 135576
|
|
|
|
| |
llvm-svn: 133829
|
|
|
|
| |
llvm-svn: 132973
|
|
|
|
| |
llvm-svn: 132357
|
|
|
|
| |
llvm-svn: 130175
|
|
|
|
|
|
| |
method definition.
llvm-svn: 130037
|
|
|
|
| |
llvm-svn: 129703
|
|
|
|
| |
llvm-svn: 129626
|
|
|
|
| |
llvm-svn: 128948
|
|
|
|
| |
llvm-svn: 128893
|
|
|
|
|
|
| |
Radar 9168773
llvm-svn: 128150
|
|
|
|
|
|
|
|
| |
in order.
This fixes few blocks.exp regressions.
llvm-svn: 126960
|
|
|
|
| |
llvm-svn: 126874
|
|
|
|
|
|
|
|
|
|
| |
in order.
This fixes few blocks.exp regressions.
Reapply r126795 with a fix (one character change) for gdb testsuite regressions.
llvm-svn: 126858
|
|
|
|
| |
llvm-svn: 126848
|
|
|
|
|
|
|
|
| |
in order.
This fixes few blocks.exp regressions.
llvm-svn: 126795
|
|
|
|
|
|
|
|
|
|
| |
invocation function into the debug info. Rather than faking up a class,
which is tricky because of the custom layout we do, we just emit a struct
directly from the layout information we've already got.
Also, don't emit an unnecessarily parameter alloca for this "variable".
llvm-svn: 126255
|
|
|
|
|
|
|
|
| |
constructor or destructor.
This patch rewrites r125142.
llvm-svn: 125632
|
|
|
|
|
|
|
|
| |
destructor or copy constructor than let debug info know about it.
Radar 8945514.
llvm-svn: 125142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- BlockDeclRefExprs always store VarDecls
- BDREs no longer store copy expressions
- BlockDecls now store a list of captured variables, information about
how they're captured, and a copy expression if necessary
With that in hand, change IR generation to use the captures data in
blocks instead of walking the block independently.
Additionally, optimize block layout by emitting fields in descending
alignment order, with a heuristic for filling in words when alignment
of the end of the block header is insufficient for the most aligned
field.
llvm-svn: 125005
|
|
|
|
| |
llvm-svn: 124020
|
|
|
|
| |
llvm-svn: 123682
|
|
|
|
| |
llvm-svn: 121333
|
|
|
|
| |
llvm-svn: 121326
|
|
|
|
| |
llvm-svn: 121302
|
|
|
|
| |
llvm-svn: 117928
|
|
|
|
|
|
| |
most level.
llvm-svn: 117613
|
|
|
|
|
|
| |
This is tested by anon-union.exp.
llvm-svn: 116372
|
|
|
|
|
|
| |
constant initializers.
llvm-svn: 116138
|
|
|
|
| |
llvm-svn: 115789
|
|
|
|
|
|
| |
In this experimental mode try avoiding debug info emission for classes as much as possible. The goal is to reduce size of produced debuginfo without reducing quality of debug info in general. This is a work in progress.
llvm-svn: 115188
|
|
|
|
| |
llvm-svn: 112840
|
|
|
|
|
|
| |
Patch originally by Alexander Herz.
llvm-svn: 112275
|
|
|
|
| |
llvm-svn: 111852
|
|
|
|
|
|
|
|
| |
not part of the IR, are not uniqued, and may be safely RAUW'd.
This replaces a variety of alternate mechanisms for achieving
the same effect.
llvm-svn: 111682
|
|
|
|
|
|
| |
constant integer globals, based on Chris's feedback.
llvm-svn: 110694
|
|
|
|
|
|
| |
constant variable.
llvm-svn: 110660
|
|
|
|
| |
llvm-svn: 109535
|
|
|
|
| |
llvm-svn: 109507
|