gdb: Update gdbarch.py with latest changes in gdbarch.c

Message ID 20230111174501.3699871-1-thiago.bauermann@linaro.org
State Committed
Commit 6be354acf31c8007450114ad5ec64341a4afb608
Headers
Series gdb: Update gdbarch.py with latest changes in gdbarch.c |

Commit Message

Thiago Jung Bauermann Jan. 11, 2023, 5:45 p.m. UTC
  Commit 2b16913cdca2 ("gdb: make gdbarch_alloc take ownership of the tdep")
changed gdbarch.c without updating gdbarch.py.  As a result, running
gdbarch.py reverts those changes and causes the build to fail.

So change gdbarch.py to generate the current version of gdbarch.c.
---
 gdb/gdbarch.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Comments

Simon Marchi Jan. 11, 2023, 6:42 p.m. UTC | #1
On 1/11/23 12:45, Thiago Jung Bauermann via Gdb-patches wrote:
> Commit 2b16913cdca2 ("gdb: make gdbarch_alloc take ownership of the tdep")
> changed gdbarch.c without updating gdbarch.py.  As a result, running
> gdbarch.py reverts those changes and causes the build to fail.
> 
> So change gdbarch.py to generate the current version of gdbarch.c.

Heh, how silly of me.  This is ok, thanks for fixing:

Approved-By: Simon Marchi <simon.marchi@efficios.com>

Simon
  
Thiago Jung Bauermann Jan. 11, 2023, 7:49 p.m. UTC | #2
Hello Simon,

Simon Marchi <simark@simark.ca> writes:

> On 1/11/23 12:45, Thiago Jung Bauermann via Gdb-patches wrote:
>> Commit 2b16913cdca2 ("gdb: make gdbarch_alloc take ownership of the tdep")
>> changed gdbarch.c without updating gdbarch.py.  As a result, running
>> gdbarch.py reverts those changes and causes the build to fail.
>> 
>> So change gdbarch.py to generate the current version of gdbarch.c.
>
> Heh, how silly of me.  This is ok, thanks for fixing:
>
> Approved-By: Simon Marchi <simon.marchi@efficios.com>

Thank you for the quick review! Pushed.
  

Patch

diff --git a/gdb/gdbarch.py b/gdb/gdbarch.py
index d2bf86039d11..7dc79386940f 100755
--- a/gdb/gdbarch.py
+++ b/gdb/gdbarch.py
@@ -286,7 +286,7 @@  with open("gdbarch.c", "w") as f:
         print(f"  {c.type} {c.name};", file=f)
     print(file=f)
     print("  /* target specific vector.  */", file=f)
-    print("  struct gdbarch_tdep_base *tdep = nullptr;", file=f)
+    print("  gdbarch_tdep_up tdep;", file=f)
     print("  gdbarch_dump_tdep_ftype *dump_tdep = nullptr;", file=f)
     print(file=f)
     print("  /* per-architecture data-pointers.  */", file=f)
@@ -316,13 +316,13 @@  with open("gdbarch.c", "w") as f:
     print(file=f)
     print("struct gdbarch *", file=f)
     print("gdbarch_alloc (const struct gdbarch_info *info,", file=f)
-    print("	       struct gdbarch_tdep_base *tdep)", file=f)
+    print("	       gdbarch_tdep_up tdep)", file=f)
     print("{", file=f)
     print("  struct gdbarch *gdbarch;", file=f)
     print("", file=f)
     print("  gdbarch = new struct gdbarch;", file=f)
     print(file=f)
-    print("  gdbarch->tdep = tdep;", file=f)
+    print("  gdbarch->tdep = std::move (tdep);", file=f)
     print(file=f)
     for c in filter(info, components):
         print(f"  gdbarch->{c.name} = info->{c.name};", file=f)