https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/101130
>From 55b1ac1fbad89ebc50038738c1e09045e9884be8 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Mon, 29 Jul 2024 22:37:43 -0700
Subject: [PATCH 1/4] [lldb] Change Module to have a concrete UnwindTable,
u
https://github.com/jimingham approved this pull request.
LGTM I like that you also changed "Update" to "ModuleWasUpdated", that's more
accurate. `m_initialized` isn't quite the right name, it means "needs work"
not "initialized" which sounds like it should happen once.
If you can think of a be
https://github.com/JDevlieghere approved this pull request.
This makes sense to me. LGTM if Jim is happy.
https://github.com/llvm/llvm-project/pull/101130
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman
jasonmolenda wrote:
Thanks for the suggestion @jimingham , I pushed an update to implement that
idea.
https://github.com/llvm/llvm-project/pull/101130
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/lis
llvmbot wrote:
@llvm/pr-subscribers-lldb
Author: Jason Molenda (jasonmolenda)
Changes
Currently a Module has a std::optional which is created when
the UnwindTable is requested from outside the Module. The idea is to delay its
creation until the Module has an ObjectFile init
https://github.com/jasonmolenda updated
https://github.com/llvm/llvm-project/pull/101130
>From 55b1ac1fbad89ebc50038738c1e09045e9884be8 Mon Sep 17 00:00:00 2001
From: Jason Molenda
Date: Mon, 29 Jul 2024 22:37:43 -0700
Subject: [PATCH 1/3] [lldb] Change Module to have a concrete UnwindTable,
u
jasonmolenda wrote:
> It is a little odd that the laziness of the UnwindTable itself gets defeated
> by Update, which forces the Initialize even if the unwind table isn't
> currently being requested.
I could add an ivar `m_module_has_updated` which is set when a new
ObjectFile/SymbolFileVendo
@@ -64,7 +64,7 @@ class UnwindTable {
private:
void Dump(Stream &s);
- void Initialize();
+ void Initialize(bool force = false);
jasonmolenda wrote:
Yeah I'm not thrilled with the terminology I used. But I had `Initialize`
which assumed no unwind source
jimingham wrote:
So the strategy here is the UnwindTable class calls its `Initialize()` any time
a client wants to use an UnwindTable so that it can be lazily filled. Then
Module calls `UnwindTable::Update()` any time something gets added to the
module that might change the unwind table.
Th
@@ -64,7 +64,7 @@ class UnwindTable {
private:
void Dump(Stream &s);
- void Initialize();
+ void Initialize(bool force = false);
jimingham wrote:
This needs a comment explaining what you are forcing.
https://github.com/llvm/llvm-project/pull/101130
_
10 matches
Mail list logo