This recently came up in the LLVM project. Harvard architectures
put code and data into separate address spaces, but those spaces
are not explicit; instructions that load/store memory implicitly
use the data space, while things like taking a function address or
doing indirect branches will implic
Paul,
I haven't needed to contend with this issue. But as I was looking over the
standard, this was my initial gut reaction too: use the segment selectors. This
use actually does seem like it's a characteristic of the target architecture to
me. You started the discussion with "Harvard architect
Not to derail this thread, but another thing that might be worth checking
is: should debug_aranges include non-code addresses. GCC's don't, Clang's
do. Sounds like Clang's correct, but GCC is sort of the defacto standard
DWARF producer, so might be worth getting an authoritative
statement/clarified
> Not to derail this thread, but another thing that might be worth checking is:
> should debug_aranges include non-code addresses. GCC's don't, Clang's do.
> Sounds like Clang's correct, but GCC is sort of the defacto standard DWARF
> producer, so might be worth getting an authoritative statemen
On Sun, Mar 29, 2020 at 2:56 PM Cary Coutant wrote:
> > Not to derail this thread, but another thing that might be worth
> checking is: should debug_aranges include non-code addresses. GCC's don't,
> Clang's do. Sounds like Clang's correct, but GCC is sort of the defacto
> standard DWARF producer