https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/77491
We can pass `-mcpu=native` to the clang driver to let it consider the host CPU
when choosing the compile target for `clang-repl`. We can already achieve this
behavior with `clang-repl -Xcc -mcpu=native`,
weliveindetail wrote:
Oh and this matches the default behavior in Orc host detection btw:
https://github.com/llvm/llvm-project/blob/release/17.x/llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp#L35
https://github.com/llvm/llvm-project/pull/77491
_
weliveindetail wrote:
Thanks for the quick review!
https://github.com/llvm/llvm-project/pull/77491
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/77491
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Stefan Gränitz
Date: 2022-07-26T17:52:43+02:00
New Revision: 1e308204838b5edc5ffbd775896a004edb08c60a
URL:
https://github.com/llvm/llvm-project/commit/1e308204838b5edc5ffbd775896a004edb08c60a
DIFF:
https://github.com/llvm/llvm-project/commit/1e308204838b5edc5ffbd775896a004edb08c60a.diff
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/85378
This assertion failure is one (fortunate) symptom:
```
clang/include/clang/AST/DeclBase.h:1337: reference
clang::DeclListNode::iterator::operator*() const: Assertion `Ptr &&
"dereferencing end() iterator"
weliveindetail wrote:
I can reproduce it downstream in the implicit Undo after including a header
that causes a lot of parse errors in nested headers. I am afraid it's
unpractical to emulate in the test suite upstream.
The code is exercised in all Undo tests. They don't reproduce the issue rig
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/85378
From 6fbd6e36133af7af008c84a1a2e44c243aed26be Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Fri, 15 Mar 2024 11:01:09 +0100
Subject: [PATCH 1/2] [clang-repl] Fix assertion failure
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/85378
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail commented:
Two minor remarks
https://github.com/llvm/llvm-project/pull/85378
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -375,16 +375,22 @@ void IncrementalParser::CleanUpPTU(PartialTranslationUnit
&PTU) {
TranslationUnitDecl *MostRecentTU = PTU.TUPart;
TranslationUnitDecl *FirstTU = MostRecentTU->getFirstDecl();
if (StoredDeclsMap *Map = FirstTU->getPrimaryContext()->getLookupPtr()) {
@@ -205,7 +205,7 @@ class StoredDeclsList {
Data.setPointer(Head);
}
- /// Return an array of all the decls that this list represents.
+ /// Return the list of all the decls.
weliveindetail wrote:
This is not an array (otherwise we could have done era
@@ -375,16 +375,22 @@ void IncrementalParser::CleanUpPTU(PartialTranslationUnit
&PTU) {
TranslationUnitDecl *MostRecentTU = PTU.TUPart;
TranslationUnitDecl *FirstTU = MostRecentTU->getFirstDecl();
if (StoredDeclsMap *Map = FirstTU->getPrimaryContext()->getLookupPtr()) {
@@ -375,16 +375,22 @@ void IncrementalParser::CleanUpPTU(PartialTranslationUnit
&PTU) {
TranslationUnitDecl *MostRecentTU = PTU.TUPart;
TranslationUnitDecl *FirstTU = MostRecentTU->getFirstDecl();
if (StoredDeclsMap *Map = FirstTU->getPrimaryContext()->getLookupPtr()) {
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/86118
Signedness of unqualified `char` is unspecified and varies between platforms.
This patch adds `Char_U` in `REPL_BUILTIN_TYPES` to account for platforms that
default to `unsigned char`.
From e0cdd176e35d0
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84461
From fae2f46d25650b8480f9d3135f33a0d6532f43ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 7 Mar 2024 23:04:22 +0100
Subject: [PATCH] [clang-repl] Add CreateJITBuilder() for
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84461
From fae2f46d25650b8480f9d3135f33a0d6532f43ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 7 Mar 2024 23:04:22 +0100
Subject: [PATCH 1/2] [clang-repl] Add CreateJITBuilder()
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/86118
From 0b7f4bc8bf57219f5f1e5ffa06c986beb16b9546 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 21 Mar 2024 14:04:10 +0100
Subject: [PATCH 1/3] Add reproducer
---
clang/unittest
weliveindetail wrote:
Let's give the pre-merge checks a 2nd chance..
https://github.com/llvm/llvm-project/pull/86118
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
weliveindetail wrote:
Windows buildbot failure is unrelated. This code is covered in unittest
ClangReplInterpreterTests and it passed.
https://github.com/llvm/llvm-project/pull/86118
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://list
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/86118
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
weliveindetail wrote:
Thanks for your note. Looks like the problem is that the ARM target is not
registered. It's an uncommon requirement for a unitttest.. Will see how to
check that at runtime. If you have an idea, let me know. Thanks
https://github.com/llvm/llvm-project/pull/84461
__
weliveindetail wrote:
I will try this
https://github.com/llvm/llvm-project/blob/release/18.x/llvm/unittests/DebugInfo/LogicalView/CodeViewReaderTest.cpp#L482
and push a quick-fix.
https://github.com/llvm/llvm-project/pull/84461
___
cfe-commits mailin
Author: Stefan Gränitz
Date: 2024-03-25T11:50:21+01:00
New Revision: 13078cbc3eeb0ae91c370ce0f604f7165b26e0c8
URL:
https://github.com/llvm/llvm-project/commit/13078cbc3eeb0ae91c370ce0f604f7165b26e0c8
DIFF:
https://github.com/llvm/llvm-project/commit/13078cbc3eeb0ae91c370ce0f604f7165b26e0c8.diff
weliveindetail wrote:
We do need the target and not just the symbols. It could be any non-native
target, but implementing a selection mechanism isn't worth the effort. We just
try ARM and (with my above patch) otherwise skip the test.
https://github.com/llvm/llvm-project/pull/84461
___
weliveindetail wrote:
@amy-kwan Thanks for your note and sorry for the long delay. There were so many
unrelated buildbot failures today, that I didn't catch this one. I think it was
fixed meanwhile with
https://github.com/llvm/llvm-project/commit/cb994d41c3afb2bd0b25a4c5b2ac48978bf1b23d
thank
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/85378
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/87064
Adding code for built-in functionality during initialization is very common.
Call this function afterwards to hide it from Undo. Any serious interpreter
needs it.
From e924da63f1e926f7a7008f661730b1fd478
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/87066
None
From 1835e627203ece2e81787d6167ccc15b62c31f36 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Fri, 29 Mar 2024 13:37:36 +0100
Subject: [PATCH] [clang-repl] Minor cleanups in Va
weliveindetail wrote:
Possible, but might add limitations. The init process can be complex. I could
imagine a runtime to require actual execution of code (and not only parsing as
we'd implement it right now I guess) or load a dynamic library. The patch here
allows that, the constructor approac
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/87066
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
weliveindetail wrote:
Thanks for sharing your patch @jameshu15869!
For the moment it seems like a mix of many moving pieces. I think it would be
good to review them isolation, at least ORC runtime support and ELFNix platform
changes. All the RPC utilities could go into a separate cpp right? We
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84150
A `TopLevelStmtDecl` must be a `DeclContext` itself to avoid variable
definitions to be added to the outer `TranslationUnitDecl` context.
Additionally, `ActOnForStmt()` requires a `CompoundScope` when pro
weliveindetail wrote:
This fixes https://github.com/llvm/llvm-project/issues/83028 which provides
context on investigation.
https://github.com/llvm/llvm-project/pull/84150
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/
@@ -5676,24 +5676,32 @@ Parser::DeclGroupPtrTy Parser::ParseTopLevelStmtDecl() {
// Parse a top-level-stmt.
Parser::StmtVector Stmts;
ParsedStmtContext SubStmtCtx = ParsedStmtContext();
- Actions.PushFunctionScope();
+ ParseScope FnScope(this, Scope::FnScope | Scope::De
@@ -20446,12 +20446,22 @@ Decl *Sema::ActOnFileScopeAsmDecl(Expr *expr,
return New;
}
-Decl *Sema::ActOnTopLevelStmtDecl(Stmt *Statement) {
- auto *New = TopLevelStmtDecl::Create(Context, Statement);
- Context.getTranslationUnitDecl()->addDecl(New);
+TopLevelStmtDecl *Sema
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84150
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84150
From 27ff0ddc0d736f4959abe61c9fd43b9c48ffb6a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Wed, 28 Feb 2024 15:45:53 +0100
Subject: [PATCH 1/7] Add test cases for variable definit
weliveindetail wrote:
Thanks! Added `while` with empty body as well as `switch`. Refined test output
a bit, so that it now prints:
```
i = 5 (global scope)
i = 1 (while condition)
i = 2 (if condition)
i = 3 (switch condition)
i = 4 (for-init)
```
https://github.com/llvm/llvm-project/pull/84150
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84174
With out-of-process execution the target triple can be different from the one
on the host. We need an interface to configure it.
From 767fccd9b2f5badee46aaf8ab9cca5315c538720 Mon Sep 17 00:00:00 2001
From
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84174
From 0d7f6a8e72caeada251c661f5804d9766345e052 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Wed, 6 Mar 2024 16:46:56 +0100
Subject: [PATCH] [clang-repl] Pass triple to IncrementalC
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84176
From 143ed8ccf592be46181fb3dcd814b4afa1b39833 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Wed, 6 Mar 2024 12:37:50 +0100
Subject: [PATCH 1/2] [clang-repl] Refactor locking of run
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail commented:
Yes sure! It requires access to the interface, but IMHO that makes a lot of
sense anyway.
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://list
@@ -137,9 +136,10 @@ class Interpreter {
Expr *SynthesizeExpr(Expr *E);
-private:
size_t getEffectivePTUSize() const;
+ void finalizeInitPTUStack();
weliveindetail wrote:
We could also consider renaming this to `getNumUndoSteps()` and
`setUndoBarrier(
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84150
From 27ff0ddc0d736f4959abe61c9fd43b9c48ffb6a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Wed, 28 Feb 2024 15:45:53 +0100
Subject: [PATCH 1/9] Add test cases for variable definit
@@ -41,3 +40,23 @@ for (; i > 4; --i) { printf("i = %d\n", i); };
int j = i; printf("j = %d\n", j);
// CHECK-NEXT: j = 4
+
+{++i; printf("i = %d (global scope)\n", i);}
+// CHECK-NEXT: i = 5
+
+while (int i = 1) { printf("i = %d (while condition)\n", i--); break; }
+// CHECK-N
@@ -137,9 +136,10 @@ class Interpreter {
Expr *SynthesizeExpr(Expr *E);
-private:
weliveindetail wrote:
Ok, let me play with it a little more.
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mail
@@ -137,9 +136,10 @@ class Interpreter {
Expr *SynthesizeExpr(Expr *E);
-private:
size_t getEffectivePTUSize() const;
+ void finalizeInitPTUStack();
weliveindetail wrote:
Hm, why restore point? Do you mean sth like `markMaxRestorePoint` as in "the
las
weliveindetail wrote:
Thanks for the quick feedback and review!
https://github.com/llvm/llvm-project/pull/84174
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84174
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -137,9 +136,10 @@ class Interpreter {
Expr *SynthesizeExpr(Expr *E);
-private:
weliveindetail wrote:
> We can befriend the test to the interpreter.
I don't think we can do this:
```
// Defines FRIEND_TEST.
#include
```
> make this `protected:` and ha
weliveindetail wrote:
Interesting, thanks for reporting! It's this code:
```
llvm::MemoryBuffer *MB = llvm::MemoryBuffer::getMemBuffer("").release();
Clang->getPreprocessorOpts().addRemappedFile("<<< inputs >>>", MB);
```
Apparently, it is related to releasing the MemBuffer and passing the r
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84261
Reverts llvm/llvm-project#84174 due too sanitizer memory leak detection
From efe6097aad69aba7d2421880305198bf09226db6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 7 Mar 2024
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84261
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84150
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Stefan Gränitz
Date: 2024-03-07T23:15:02+01:00
New Revision: 2a4a852a67eab2f8d0533c23719b1bd08d6edea9
URL:
https://github.com/llvm/llvm-project/commit/2a4a852a67eab2f8d0533c23719b1bd08d6edea9
DIFF:
https://github.com/llvm/llvm-project/commit/2a4a852a67eab2f8d0533c23719b1bd08d6edea9.diff
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84176
From ebf00ec8396eabf96c413e861b72ff1c88424685 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Wed, 6 Mar 2024 12:37:50 +0100
Subject: [PATCH] [clang-repl] Refactor locking of runtime
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail commented:
Rebased and reduced to refactoring NFC
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -137,9 +136,10 @@ class Interpreter {
Expr *SynthesizeExpr(Expr *E);
-private:
size_t getEffectivePTUSize() const;
+ void finalizeInitPTUStack();
weliveindetail wrote:
Yes, sounds goo. Done
https://github.com/llvm/llvm-project/pull/84176
__
@@ -136,6 +136,24 @@ TEST(InterpreterTest, DeclsAndStatements) {
EXPECT_TRUE(!!R2);
}
+TEST(InterpreterTest, PTUStack) {
+ clang::IncrementalCompilerBuilder CB;
+ auto CI = cantFail(CB.CreateCpp());
+
+ llvm::Error Err = llvm::Error::success();
+ auto Interp = std::make_
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/83126
From 8ba5253b20d1aef0a542506a667f6b66b84ac5b9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Fri, 8 Mar 2024 00:08:56 +0100
Subject: [PATCH] [clang-repl] Expose RuntimeInterfaceBuil
weliveindetail wrote:
Squashed, rebased, polished and tested
https://github.com/llvm/llvm-project/pull/83126
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84460
IncrementalExecutor is an implementation detail of the Interpreter. In order to
test extended features properly, we must be able to setup and tear down the
executor manually.
From 10f8d3eb040a5838d84d8a8
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84461
The LLJITBuilder interface provides a very convenient way to configure the
ORCv2 JIT engine. IncrementalExecutor already used it internally to construct
the JIT, but didn't provide external access. This p
weliveindetail wrote:
This PR was factored out for isolated review and to reduce the size of the
follow-up patch in https://github.com/llvm/llvm-project/pull/84461. It depends
on the previous change in https://github.com/llvm/llvm-project/pull/83126.
Combined patch size will shrink significant
@@ -373,21 +373,32 @@ Interpreter::Parse(llvm::StringRef Code) {
static llvm::Expected
createJITTargetMachineBuilder(const std::string &TT) {
if (TT == llvm::sys::getProcessTriple())
+// This fails immediately if the target backend is not registered
return llvm::orc:
https://github.com/weliveindetail commented:
This PR depends on two predecessor patches, but I wanted to share it for review
already. For the moment please refer to the single commit in
https://github.com/llvm/llvm-project/pull/84461/commits/cc46034e5288ba54dfc8a0ea7d54792cbb99227d
for review.
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -102,4 +124,97 @@ TEST(InterpreterExtensionsTest, FindRuntimeInterface) {
EXPECT_EQ(1U, Interp.RuntimeIBPtr->TransformerQueries);
}
+class CustomJBInterpreter : public Interpreter {
+ using CustomJITBuilderCreatorFunction =
+
std::function>()>;
+ CustomJITBuilderC
@@ -102,4 +124,97 @@ TEST(InterpreterExtensionsTest, FindRuntimeInterface) {
EXPECT_EQ(1U, Interp.RuntimeIBPtr->TransformerQueries);
}
+class CustomJBInterpreter : public Interpreter {
+ using CustomJITBuilderCreatorFunction =
+
std::function>()>;
+ CustomJITBuilderC
weliveindetail wrote:
> Do you mind incorporating this patch so that we avoid churn?
Sure. Essentially, this drops lazy creation of the executor and makes it
dependent on the frontend action explicitly. Fine for me. We can still expose
explicit setup/tear-down.
https://github.com/llvm/llvm-pr
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84460
From 10f8d3eb040a5838d84d8a84fe636c7c2a7d196b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Fri, 8 Mar 2024 00:08:56 +0100
Subject: [PATCH 1/3] [clang-repl] Expose RuntimeInterface
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/83126
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84176
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/84758
Until now the IncrExecutor is created lazily on the first execution request. In
order to process the PTUs that come from initialization, we have to do it
upfront implicitly.
From 2f7b523472543a92a9770188
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84758
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
weliveindetail wrote:
> > Do you mind incorporating this patch so that we avoid churn?
>
> Sure. Essentially, this drops lazy creation of the executor and makes it
> dependent on the frontend action explicitly. Fine for me. We can still expose
> explicit setup/tear-down.
@vgvassilev I moved i
@@ -14,7 +14,7 @@ struct A { int a; A(int a) : a(a) {} virtual ~A(); };
// PartialTranslationUnit.
inline A::~A() { printf("~A(%d)\n", a); }
-// Create one instance with new and delete it.
+// Create one instance with new and delete it. We crash here now:
A *a1 = new A(1);
--
@@ -14,7 +14,7 @@ struct A { int a; A(int a) : a(a) {} virtual ~A(); };
// PartialTranslationUnit.
inline A::~A() { printf("~A(%d)\n", a); }
-// Create one instance with new and delete it.
+// Create one instance with new and delete it. We crash here now:
A *a1 = new A(1);
--
@@ -14,7 +14,7 @@ struct A { int a; A(int a) : a(a) {} virtual ~A(); };
// PartialTranslationUnit.
inline A::~A() { printf("~A(%d)\n", a); }
-// Create one instance with new and delete it.
+// Create one instance with new and delete it. We crash here now:
A *a1 = new A(1);
--
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84460
From a8c9cf8901d3fc24f3a2c2161b4a8796a7b28989 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 7 Mar 2024 23:04:22 +0100
Subject: [PATCH] [clang-repl] Expose CreateExecutor() and
https://github.com/weliveindetail closed
https://github.com/llvm/llvm-project/pull/84460
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/84461
From 88271c39b30b84041b4b7fb8b8f34c211d8190d5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Thu, 7 Mar 2024 23:04:22 +0100
Subject: [PATCH] [clang-repl] Add CreateJITBuilder() for
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/84461
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
weliveindetail wrote:
Build bot https://lab.llvm.org/buildbot/#/builders/196/builds/46799 detected an
issue with the test -- I will try and push a fix quickly:
```
tools/clang/unittests/Interpreter/CMakeFiles/ClangReplInterpreterTests.dir/InterpreterExtensionsTest.cpp.o:InterpreterExtensionsTest
Author: Stefan Gränitz
Date: 2024-03-12T14:47:23+01:00
New Revision: ffd31c5e92da9da37cf57ca653e22db38b5af9a3
URL:
https://github.com/llvm/llvm-project/commit/ffd31c5e92da9da37cf57ca653e22db38b5af9a3
DIFF:
https://github.com/llvm/llvm-project/commit/ffd31c5e92da9da37cf57ca653e22db38b5af9a3.diff
weliveindetail wrote:
Yes, I think I can fix it quickly
https://github.com/llvm/llvm-project/pull/84460
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Stefan Gränitz
Date: 2024-03-12T23:14:23+01:00
New Revision: d73c2d5df21735805a1f46a85790db64c0615e1c
URL:
https://github.com/llvm/llvm-project/commit/d73c2d5df21735805a1f46a85790db64c0615e1c
DIFF:
https://github.com/llvm/llvm-project/commit/d73c2d5df21735805a1f46a85790db64c0615e1c.diff
weliveindetail wrote:
This should fix both: initializing the native target (your reported case) AND
skipping the test on platforms that don't support JIT (other build bots
complained).
https://github.com/llvm/llvm-project/pull/84460
___
cfe-commits m
https://github.com/weliveindetail created
https://github.com/llvm/llvm-project/pull/83126
RuntimeInterfaceBuilder wires up JITed expressions with the hardcoded
Interpreter runtime. It's used only for value printing right now, but it is not
limited to that. The default implementation focuses on
weliveindetail wrote:
This is an early proposal. I'd like to collect feedback before polishing. Let's
focus on the conceptual questions. I tried to keep the patch minimal, so that
it's easier to review. Each of the three commits depends on the previous ones.
They should work and be reviewed in
https://github.com/weliveindetail commented:
This is an early proposal. I'd like to collect feedback before polishing. Let's
focus on the conceptual questions. I tried to keep the patch minimal, so that
it's easier to review. Each of the three commits depends on the previous ones.
They shoul
https://github.com/weliveindetail edited
https://github.com/llvm/llvm-project/pull/83126
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -741,9 +775,8 @@ Expr *Interpreter::SynthesizeExpr(Expr *E) {
auto *OutValue = CStyleCastPtrExpr(S, Ctx.VoidPtrTy, (uintptr_t)&LastValue);
// Build `__clang_Interpreter_SetValue*` call.
- RuntimeInterfaceBuilder Builder(*this, Ctx, S, E, {ThisInterp, OutValue});
+ Exp
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/83126
From 3a6fdd006f00b0530e7fe6ead1fcd2765c1bfe07 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Mon, 26 Feb 2024 19:12:41 +0100
Subject: [PATCH 1/4] [clang-repl] Split out TypeVisitor
weliveindetail wrote:
Alright. The above change makes it as cheap as it gets with an abstraction:
virtual function calls only on init and one function pointer call for each
processed statement.
> I was wondering if we can extend that functionality via a callback mechanism
How would that look
https://github.com/weliveindetail updated
https://github.com/llvm/llvm-project/pull/83126
From 3a6fdd006f00b0530e7fe6ead1fcd2765c1bfe07 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Gr=C3=A4nitz?=
Date: Mon, 26 Feb 2024 19:12:41 +0100
Subject: [PATCH 1/5] [clang-repl] Split out TypeVisitor
1 - 100 of 179 matches
Mail list logo