From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) by sourceware.org (Postfix) with ESMTP id D04D33858D1E for ; Fri, 23 Dec 2022 00:06:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D04D33858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gentoo.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org Received: by smtp.gentoo.org (Postfix, from userid 559) id 5D9CC340B29; Fri, 23 Dec 2022 00:06:28 +0000 (UTC) From: Mike Frysinger To: gdb-patches@sourceware.org Subject: [PATCH] sim: use bfd_vma when reading start addr from bfd info Date: Thu, 22 Dec 2022 19:05:49 -0500 Message-Id: <20221223000549.29177-1-vapier@gentoo.org> X-Mailer: git-send-email 2.39.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.1 required=5.0 tests=BAYES_00,GIT_PATCH_0,JMQ_SPF_NEUTRAL,KAM_DMARC_STATUS,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Since SIM_ADDR is always 32-bit, it might truncate the address with 64-bit ELFs. Since we load that addr from the bfd, use the bfd_vma type which matches the bfd_get_start_address API. --- sim/avr/interp.c | 2 +- sim/bfin/interp.c | 2 +- sim/bpf/sim-if.c | 2 +- sim/cris/sim-if.c | 4 ++-- sim/frv/sim-if.c | 2 +- sim/iq2000/sim-if.c | 2 +- sim/lm32/sim-if.c | 2 +- sim/m32r/sim-if.c | 2 +- sim/or1k/sim-if.c | 2 +- sim/pru/interp.c | 2 +- sim/riscv/interp.c | 2 +- 11 files changed, 12 insertions(+), 12 deletions(-) diff --git a/sim/avr/interp.c b/sim/avr/interp.c index 3b0397b8f89f..3acf09b15ada 100644 --- a/sim/avr/interp.c +++ b/sim/avr/interp.c @@ -1769,7 +1769,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, { struct avr_sim_state *state = AVR_SIM_STATE (sd); SIM_CPU *cpu = STATE_CPU (sd, 0); - SIM_ADDR addr; + bfd_vma addr; /* Set the PC. */ if (abfd != NULL) diff --git a/sim/bfin/interp.c b/sim/bfin/interp.c index f4071ce47398..493c3b62ffb8 100644 --- a/sim/bfin/interp.c +++ b/sim/bfin/interp.c @@ -1118,7 +1118,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, { SIM_CPU *cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; /* Set the PC. */ if (abfd != NULL) diff --git a/sim/bpf/sim-if.c b/sim/bpf/sim-if.c index 25ea76346ec1..b29300f03287 100644 --- a/sim/bpf/sim-if.c +++ b/sim/bpf/sim-if.c @@ -195,7 +195,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; /* Determine the start address. diff --git a/sim/cris/sim-if.c b/sim/cris/sim-if.c index 7568b856661a..c3b46afb34e5 100644 --- a/sim/cris/sim-if.c +++ b/sim/cris/sim-if.c @@ -974,10 +974,10 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; if (sd != NULL) - addr = cris_start_address != (SIM_ADDR) -1 + addr = cris_start_address != (bfd_vma) -1 ? cris_start_address : (interp_start_addr != 0 ? interp_start_addr diff --git a/sim/frv/sim-if.c b/sim/frv/sim-if.c index f0487f5732ff..6e0f1bbaba64 100644 --- a/sim/frv/sim-if.c +++ b/sim/frv/sim-if.c @@ -182,7 +182,7 @@ sim_create_inferior (SIM_DESC sd, bfd *abfd, char * const *argv, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; if (abfd != NULL) addr = bfd_get_start_address (abfd); diff --git a/sim/iq2000/sim-if.c b/sim/iq2000/sim-if.c index 1b1b3ac6e615..e9b66b6a7ef9 100644 --- a/sim/iq2000/sim-if.c +++ b/sim/iq2000/sim-if.c @@ -137,7 +137,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, char * const *argv, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; if (abfd != NULL) addr = bfd_get_start_address (abfd); diff --git a/sim/lm32/sim-if.c b/sim/lm32/sim-if.c index a2a33620bdbc..82f2e117671e 100644 --- a/sim/lm32/sim-if.c +++ b/sim/lm32/sim-if.c @@ -198,7 +198,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, char * const *argv, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; if (abfd != NULL) addr = bfd_get_start_address (abfd); diff --git a/sim/m32r/sim-if.c b/sim/m32r/sim-if.c index 401d1020d704..3594162956e1 100644 --- a/sim/m32r/sim-if.c +++ b/sim/m32r/sim-if.c @@ -151,7 +151,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, char * const *argv, { SIM_CPU *current_cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; if (abfd != NULL) addr = bfd_get_start_address (abfd); diff --git a/sim/or1k/sim-if.c b/sim/or1k/sim-if.c index a60c8815772b..d698d7035bf7 100644 --- a/sim/or1k/sim-if.c +++ b/sim/or1k/sim-if.c @@ -263,7 +263,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, char * const *argv, char * const *envp) { SIM_CPU *current_cpu = STATE_CPU (sd, 0); - SIM_ADDR addr; + bfd_vma addr; if (abfd != NULL) addr = bfd_get_start_address (abfd); diff --git a/sim/pru/interp.c b/sim/pru/interp.c index c7226a349b60..250a32a889a5 100644 --- a/sim/pru/interp.c +++ b/sim/pru/interp.c @@ -856,7 +856,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *prog_bfd, SIM_CPU *cpu = STATE_CPU (sd, 0); struct pru_regset *pru_cpu = PRU_SIM_CPU (cpu); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; addr = bfd_get_start_address (prog_bfd); diff --git a/sim/riscv/interp.c b/sim/riscv/interp.c index 46f19165971d..50b5a514e327 100644 --- a/sim/riscv/interp.c +++ b/sim/riscv/interp.c @@ -139,7 +139,7 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, { SIM_CPU *cpu = STATE_CPU (sd, 0); host_callback *cb = STATE_CALLBACK (sd); - SIM_ADDR addr; + bfd_vma addr; /* Set the PC. */ if (abfd != NULL) -- 2.39.0