[cfe-dev] How to refer to linker script symbols?
anton at samba.org
Mon Nov 3 16:07:37 PST 2014
The Linux kernel makes extensive use of linker script symbols indicating
the start and end of section. An example:
extern const char *__start___trace_bprintk_fmt;
extern const char *__stop___trace_bprintk_fmt;
return __stop___trace_bprintk_fmt != __start___trace_bprintk_fmt;
Clang assumes these two symbols can't alias, emits a warning and optimises
the comparison away:
foo.c:6:36: warning: array comparison always evaluates to true
li 3, 1
In this particular case the section is empty, so the two symbols do
point to the same address. Any thoughts on the best way to solve this?
More information about the cfe-dev