| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 371636
|
|
|
|
| |
llvm-svn: 371626
|
|
|
|
| |
llvm-svn: 371611
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
so that you don't have to link Error.o and all of its dependencies.
In more detail: global initializers in Error.o can't be elided with
-ffunction-sections/-gc-sections since they always need to be run
causing a fairly significant binary bloat if all you want is the
ABI breaking checks code.
Differential Revision: https://reviews.llvm.org/D67387
llvm-svn: 371561
|
|
|
|
|
|
|
|
|
| |
CodeGen into opt pipeline.""
This reverts commit r371502, it broke tests
(clang/test/CodeGenCXX/auto-var-init.cpp).
llvm-svn: 371507
|
|
|
|
|
|
|
|
| |
opt pipeline."
With a fix for sanitizer breakage (see explanation in D60318).
llvm-svn: 371502
|
|
|
|
| |
llvm-svn: 371489
|
|
|
|
| |
llvm-svn: 371485
|
|
|
|
| |
llvm-svn: 371479
|
|
|
|
| |
llvm-svn: 371477
|
|
|
|
| |
llvm-svn: 371191
|
|
|
|
| |
llvm-svn: 371190
|
|
|
|
| |
llvm-svn: 371161
|
|
|
|
| |
llvm-svn: 371135
|
|
|
|
| |
llvm-svn: 371123
|
|
|
|
| |
llvm-svn: 371119
|
|
|
|
| |
llvm-svn: 371105
|
|
|
|
| |
llvm-svn: 371102
|
|
|
|
| |
llvm-svn: 371091
|
|
|
|
| |
llvm-svn: 370988
|
|
|
|
| |
llvm-svn: 370876
|
|
|
|
|
|
|
|
|
| |
Breaks BUILD_SHARED_LIBS build, introduces cycles in library dependency
graphs. (clangInterp depends on clangAST which depends on clangInterp)
This reverts r370839, which is an yet another recommit of D64146.
llvm-svn: 370874
|
|
|
|
| |
llvm-svn: 370844
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch introduces the skeleton of the constexpr interpreter,
capable of evaluating a simple constexpr functions consisting of
if statements. The interpreter is described in more detail in the
RFC. Further patches will add more features.
Reviewers: Bigcheese, jfb, rsmith
Subscribers: bruno, uenoku, ldionne, Tyker, thegameg, tschuett, dexonsmith, mgorny, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64146
llvm-svn: 370839
|
|
|
|
| |
llvm-svn: 370752
|
|
|
|
| |
llvm-svn: 370749
|
|
|
|
|
|
| |
This reverts r370636 (git commit 8327fed9475a14c3376b4860c75370c730e08f33)
llvm-svn: 370642
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch introduces the skeleton of the constexpr interpreter,
capable of evaluating a simple constexpr functions consisting of
if statements. The interpreter is described in more detail in the
RFC. Further patches will add more features.
Reviewers: Bigcheese, jfb, rsmith
Subscribers: bruno, uenoku, ldionne, Tyker, thegameg, tschuett, dexonsmith, mgorny, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64146
llvm-svn: 370636
|
|
|
|
|
|
| |
This reverts r370584 (git commit afcb3de117265a69d21e5673356e925a454d7d02)
llvm-svn: 370588
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch introduces the skeleton of the constexpr interpreter,
capable of evaluating a simple constexpr functions consisting of
if statements. The interpreter is described in more detail in the
RFC. Further patches will add more features.
Reviewers: Bigcheese, jfb, rsmith
Subscribers: bruno, uenoku, ldionne, Tyker, thegameg, tschuett, dexonsmith, mgorny, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64146
llvm-svn: 370584
|
|
|
|
| |
llvm-svn: 370516
|
|
|
|
| |
llvm-svn: 370501
|
|
|
|
| |
llvm-svn: 370492
|
|
|
|
| |
llvm-svn: 370442
|
|
|
|
| |
llvm-svn: 370251
|
|
|
|
| |
llvm-svn: 370188
|
|
|
|
| |
llvm-svn: 369953
|
|
|
|
| |
llvm-svn: 369951
|
|
|
|
| |
llvm-svn: 369950
|
|
|
|
| |
llvm-svn: 369948
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
One problem with untagging memory in landing pads is that it only works
correctly if the function that catches the exception is instrumented.
If the function is uninstrumented, we have no opportunity to untag the
memory.
To address this, replace landing pad instrumentation with personality function
wrapping. Each function with an instrumented stack has its personality function
replaced with a wrapper provided by the runtime. Functions that did not have
a personality function to begin with also get wrappers if they may be unwound
past. As the unwinder calls personality functions during stack unwinding,
the original personality function is called and the function's stack frame is
untagged by the wrapper if the personality function instructs the unwinder
to keep unwinding. If unwinding stops at a landing pad, the function is
still responsible for untagging its stack frame if it resumes unwinding.
The old landing pad mechanism is preserved for compatibility with old runtimes.
Differential Revision: https://reviews.llvm.org/D66377
llvm-svn: 369721
|
|
|
|
| |
llvm-svn: 369682
|
|
|
|
| |
llvm-svn: 369678
|
|
|
|
| |
llvm-svn: 369608
|
|
|
|
| |
llvm-svn: 369603
|
|
|
|
| |
llvm-svn: 369594
|
|
|
|
| |
llvm-svn: 369593
|
|
|
|
| |
llvm-svn: 369572
|
|
|
|
| |
llvm-svn: 369571
|
|
|
|
| |
llvm-svn: 369476
|