public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Chao Li" <lichao@loongson.cn>
To: devel@edk2.groups.io, qiandongyan@loongson.cn
Cc: Rebecca Cran <rebecca@bsdio.com>,
	Liming Gao <gaoliming@byosoft.com.cn>,
	Bob Feng <bob.c.feng@intel.com>,
	Yuwei Chen <yuwei.chen@intel.com>
Subject: Re: [edk2-devel] [PATCH] BaseTools/GenFw: Add support for LOONGARCH64 relax relocation
Date: Fri, 22 Sep 2023 15:33:44 +0800	[thread overview]
Message-ID: <ef58cbe3-8473-e15f-020d-c337cee3c34f@loongson.cn> (raw)
In-Reply-To: <20230922072758.1509120-1-qiandongyan@loongson.cn>

[-- Attachment #1: Type: text/plain, Size: 3832 bytes --]

Reviewed-by: Chao Li <lichao@loongson.cn>


Thanks,
Chao
在 2023/9/22 15:27, Dongyan Qian 写道:
> Correct relax id from 99 to 100 and added relocation support up to 109
>
> fix gcc14 adds new relocation, and the generated relocation
> causes the build and compilation to fail.
> REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4559
>
> Cc: Rebecca Cran<rebecca@bsdio.com>
> Cc: Liming Gao<gaoliming@byosoft.com.cn>
> Cc: Bob Feng<bob.c.feng@intel.com>
> Cc: Yuwei Chen<yuwei.chen@intel.com>
> Cc: Chao Li<lichao@loongson.cn>
> Signed-off-by: Dongyan Qian<qiandongyan@loongson.cn>
> ---
>   BaseTools/Source/C/GenFw/Elf64Convert.c | 20 ++++++++++++++++++++
>   BaseTools/Source/C/GenFw/elf_common.h   | 13 ++++++++++++-
>   2 files changed, 32 insertions(+), 1 deletion(-)
>
> diff --git a/BaseTools/Source/C/GenFw/Elf64Convert.c b/BaseTools/Source/C/GenFw/Elf64Convert.c
> index d53ecb1767..9911db65af 100644
> --- a/BaseTools/Source/C/GenFw/Elf64Convert.c
> +++ b/BaseTools/Source/C/GenFw/Elf64Convert.c
> @@ -1778,7 +1778,17 @@ WriteSections64 (
>             case R_LARCH_TLS_LD64_HI20:
>             case R_LARCH_TLS_GD_PC_HI20:
>             case R_LARCH_TLS_GD64_HI20:
> +          case R_LARCH_32_PCREL:
>             case R_LARCH_RELAX:
> +          case R_LARCH_DELETE:
> +          case R_LARCH_ALIGN:
> +          case R_LARCH_PCREL20_S2:
> +          case R_LARCH_CFA:
> +          case R_LARCH_ADD6:
> +          case R_LARCH_SUB6:
> +          case R_LARCH_ADD_ULEB128:
> +          case R_LARCH_SUB_ULEB128:
> +          case R_LARCH_64_PCREL:
>               //
>               // These types are not used or do not require fixup.
>               //
> @@ -2185,7 +2195,17 @@ WriteRelocations64 (
>                 case R_LARCH_TLS_LD64_HI20:
>                 case R_LARCH_TLS_GD_PC_HI20:
>                 case R_LARCH_TLS_GD64_HI20:
> +              case R_LARCH_32_PCREL:
>                 case R_LARCH_RELAX:
> +              case R_LARCH_DELETE:
> +              case R_LARCH_ALIGN:
> +              case R_LARCH_PCREL20_S2:
> +              case R_LARCH_CFA:
> +              case R_LARCH_ADD6:
> +              case R_LARCH_SUB6:
> +              case R_LARCH_ADD_ULEB128:
> +              case R_LARCH_SUB_ULEB128:
> +              case R_LARCH_64_PCREL:
>                   //
>                   // These types are not used or do not require fixup in PE format files.
>                   //
> diff --git a/BaseTools/Source/C/GenFw/elf_common.h b/BaseTools/Source/C/GenFw/elf_common.h
> index ccd32804b0..e4d0cdac4f 100644
> --- a/BaseTools/Source/C/GenFw/elf_common.h
> +++ b/BaseTools/Source/C/GenFw/elf_common.h
> @@ -1144,5 +1144,16 @@ typedef struct {
>   #define R_LARCH_TLS_LD64_HI20              96
>   #define R_LARCH_TLS_GD_PC_HI20             97
>   #define R_LARCH_TLS_GD64_HI20              98
> -#define R_LARCH_RELAX                      99
> +#define R_LARCH_32_PCREL                   99
> +#define R_LARCH_RELAX                      100
> +#define R_LARCH_DELETE                     101
> +#define R_LARCH_ALIGN                      102
> +#define R_LARCH_PCREL20_S2                 103
> +#define R_LARCH_CFA                        104
> +#define R_LARCH_ADD6                       105
> +#define R_LARCH_SUB6                       106
> +#define R_LARCH_ADD_ULEB128                107
> +#define R_LARCH_SUB_ULEB128                108
> +#define R_LARCH_64_PCREL                   109
> +
>   #endif /* !_SYS_ELF_COMMON_H_ */


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#108981): https://edk2.groups.io/g/devel/message/108981
Mute This Topic: https://groups.io/mt/101516908/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



[-- Attachment #2: Type: text/html, Size: 5346 bytes --]

      reply	other threads:[~2023-09-22  7:33 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-22  7:27 [edk2-devel] [PATCH] BaseTools/GenFw: Add support for LOONGARCH64 relax relocation Dongyan Qian
2023-09-22  7:33 ` Chao Li [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ef58cbe3-8473-e15f-020d-c337cee3c34f@loongson.cn \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox