RE: git: 6926e2699ae5 - main - arm: Add support for using VFP in kernel [vs. devel/libunwind for armv7 package builds]
Mark Millard <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.toolchain,gmane.os.freebsd.current,gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <[email protected]> |
https://lists.freebsd.org/archives/dev-commits-src-main/2023-February/012550.html
("git: 6926e2699ae5 - main - arm: Add support for using VFP in kernel")
did not follow a pre-existing naming convention that devel/libunwind depends on,
leading to 6000+ skipped ports on the FreeBSD armv7-package building server.
(No claim that there would not be a next-problem in the way, however.)
The details are . . .
# grep -r "\<fpr_r\>" /usr/main-src/ | more
. . . ignoring debian no such file notices . . .
/usr/main-src/sys/arm/arm/machdep_kdb.c: memcpy(regs->fpr_r, pcb->pcb_vfpstate.reg,
/usr/main-src/sys/arm/arm/machdep_kdb.c: sizeof(regs->fpr_r));
/usr/main-src/sys/arm/arm/machdep_kdb.c: memcpy(pcb->pcb_vfpstate.reg, regs->fpr_r, sizeof(regs->fpr_r));
/usr/main-src/sys/arm/include/reg.h: __uint64_t fpr_r[32];
Everything else uses fpr (no _r suffix).
devel/libunwind expects the "fpr" spelling
( from http://ampere2.nyi.freebsd.org/data/main-armv7-default/pb73012d372f5_s91b2da1370/logs/errors/libunwind-20211201_1.log ):
--- ptrace/_UPT_access_fpreg.lo ---
ptrace/_UPT_access_fpreg.c:107:25: error: no member named 'fpr' in 'struct fpreg'
memcpy(&fpreg.fpr[reg], val, sizeof(unw_fpreg_t));
~~~~~ ^
ptrace/_UPT_access_fpreg.c:123:30: error: no member named 'fpr' in 'struct fpreg'
memcpy(val, &fpreg.fpr[reg], sizeof(unw_fpreg_t));
~~~~~ ^
2 errors generated.
*** [ptrace/_UPT_access_fpreg.lo] Error code 1
===
Mark Millard
marklmi at yahoo.com