While adding the support for using VFP in the kernel the layout/names of fields of the fpreg structure was changed, which broke compilation of the libunwind port.
Work around that by restoring previous names of the fields.
Note that the layout still remains changed.
Before we'd only have 8 FP registers, and that's the amount libunwind expects.
In reality there are 32 of them, take that into account.
Details
Details
- Reviewers
mw wma andrew markmi_dsl-only.net
Diff Detail
Diff Detail
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Comment Actions
Upstream libunwind already changed to the new name in https://github.com/libunwind/libunwind/commit/99fb31d5f05ff6c96ca3a9350c792618fab23f2d
Comment Actions
Hmm, right.
So I guess that it's better to leave it as is.
We need to update our port though.
Comment Actions
Port is still mismatched for armv7 as of: # ~/fbsd-based-on-what-commit.sh -C /usr/ports/ 3712f30953d5 (HEAD -> main, freebsd/main, freebsd/HEAD) devel/fnc: Update to 0.15 Author: Ashish SHUKLA <ashish@FreeBSD.org> Commit: Ashish SHUKLA <ashish@FreeBSD.org> CommitDate: 2023-04-29 20:35:45 +0000 branch: main merge-base: 3712f30953d5dadb3fede83e2e780024fb883a65 merge-base: CommitDate: 2023-04-29 20:35:45 +0000 n617500 (--first-parent --count for merge-base) Details: --- ptrace/_UPT_access_fpreg.lo --- ptrace/_UPT_access_fpreg.c:110:25: error: no member named 'fpr' in 'struct fpreg' memcpy(&fpreg.fpr[reg], val, sizeof(unw_fpreg_t)); ~~~~~ ^ ptrace/_UPT_access_fpreg.c:126:30: error: no member named 'fpr' in 'struct fpreg' memcpy(val, &fpreg.fpr[reg], sizeof(unw_fpreg_t)); ~~~~~ ^ 2 errors generated.