[Chapel Merge] Fix backtraces with CHPL_TARGET_COMPILER=gnu

Branch: refs/heads/main
Revision: ee37f8236fa5b5ad33c830fcb5c81c9a0ff38640
Author: jabraham17
Link: Fix backtraces with CHPL_TARGET_COMPILER=gnu by jabraham17 · Pull Request #28176 · chapel-lang/chapel · GitHub
Log Message:
Fix backtraces with CHPL_TARGET_COMPILER=gnu (#28176)

Improves backtraces when using CHPL_TARGET_COMPILER=gnu.

Usually, we refine backtraces using a relative address, but with some
backend C compiler this does not work, and we should be using an
absolute address. Rather than trying to perfectly refine which address
to use, this PR just adds logic to try both (prefering relative address)
to refine line numbers for backtraces

  • paratest with/without gasnet

[Reviewed by @e-kayrakli]

Compare: Comparing ab87e395c1ffb97a0f3d3eafe8f55ff322bff367...462c279783ac4dc3add2fd5df64e8cea2f5fc883 · chapel-lang/chapel · GitHub

Diff:
M runtime/include/chpl-exec.h
M runtime/src/chpl-exec.c
M runtime/src/comm/none/comm-none.c
M runtime/src/error.c
https://github.com/chapel-lang/chapel/pull/28176.diff