NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-arm/60660: missing R_AARCH_LDST128_ABS_LO12_NC



The following reply was made to PR port-arm/60660; it has been noted by GNATS.

From: Taylor R Campbell <riastradh%NetBSD.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, netbsd-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: port-arm/60660: missing R_AARCH_LDST128_ABS_LO12_NC
Date: Fri, 28 Aug 2026 15:44:51 +0000

 This is a multi-part message in MIME format.
 --=_tarl6EbRoME+6V+rh/yI3C5H/YL5MT1L
 
 Draft attached.  Unclear on why some of these are R_AARCH_* and some
 are R_AARCH64_*.
 
 --=_tarl6EbRoME+6V+rh/yI3C5H/YL5MT1L
 Content-Type: text/plain; charset="ISO-8859-1"; name="pr60660-aarch64lst128reloc"
 Content-Transfer-Encoding: quoted-printable
 Content-Disposition: attachment; filename="pr60660-aarch64lst128reloc.patch"
 
 # HG changeset patch
 # User Taylor R Campbell <riastradh%NetBSD.org@localhost>
 # Date 1787931290 0
 #      Fri Aug 28 15:34:50 2026 +0000
 # Branch trunk
 # Node ID ffef2707d2a0245e7dadba2a9ad15c4d492bed81
 # Parent  4fbd288ac1da9e7d9592ddecf04f7513e244152f
 # EXP-Topic riastradh-pr60660-aarch64lst128reloc
 aarch64: Teach kobj_reloc about R_AARCH64_LDST128_ABS_LO12_NC.
 
 PR port-arm/60660: missing R_AARCH_LDST128_ABS_LO12_NC
 
 diff -r 4fbd288ac1da -r ffef2707d2a0 sys/arch/aarch64/aarch64/kobj_machdep.c
 --- a/sys/arch/aarch64/aarch64/kobj_machdep.c	Mon Aug 10 13:36:10 2026 +0000
 +++ b/sys/arch/aarch64/aarch64/kobj_machdep.c	Fri Aug 28 15:34:50 2026 +0000
 @@ -60,6 +60,7 @@ struct rtypeinfo {
  static const struct rtypeinfo rtypetbl[] =3D {
  	{ R_AARCH64_ABS64,		"R_AARCH64_ABS64"		},
  	{ R_AARCH64_ADD_ABS_LO12_NC,	"R_AARCH64_ADD_ABS_LO12_NC"	},
 +	{ R_AARCH64_LDST128_ABS_LO12_NC, "R_AARCH64_LDST128_ABS_LO12_NC"},
  	{ R_AARCH_LDST64_ABS_LO12_NC,	"R_AARCH64_LDST64_ABS_LO12_NC"	},
  	{ R_AARCH_LDST32_ABS_LO12_NC,	"R_AARCH64_LDST32_ABS_LO12_NC"	},
  	{ R_AARCH_LDST16_ABS_LO12_NC,	"R_AARCH64_LDST16_ABS_LO12_NC"	},
 @@ -221,6 +222,7 @@ kobj_reloc(kobj_t ko, uintptr_t relocbas
  	case R_AARCH_LDST16_ABS_LO12_NC:
  	case R_AARCH_LDST32_ABS_LO12_NC:
  	case R_AARCH_LDST64_ABS_LO12_NC:
 +	case R_AARCH64_LDST128_ABS_LO12_NC:
  		switch (rtype) {
  		case R_AARCH64_ADD_ABS_LO12_NC:
  		case R_AARCH64_LDST8_ABS_LO12_NC:
 @@ -235,6 +237,9 @@ kobj_reloc(kobj_t ko, uintptr_t relocbas
  		case R_AARCH_LDST64_ABS_LO12_NC:
  			shift =3D 3;
  			break;
 +		case R_AARCH64_LDST128_ABS_LO12_NC:
 +			shift =3D 4;
 +			break;
  		default:
  			panic("illegal rtype: %d\n", rtype);
  		}
 
 --=_tarl6EbRoME+6V+rh/yI3C5H/YL5MT1L--
 



Home | Main Index | Thread Index | Old Index