Displaying 4 results from an estimated 4 matches for "sto_tagged".
2020 Sep 17
4
[MTE] Globals Tagging - Discussion
...tize=memtag. Protection of
read-only globals would be enabled-by-default, but can be disabled at
compile time behind a flag (likely -f(no)sanitize-memtag-ro-globals).
a) Dynamic symbols (int f; extern int f;)
1.
Mark all tagged global data symbols in the dynamic symbol table as
st_other.STO_TAGGED.
2.
Teach the loader to read the symbol table at load time (and dlopen())
prior to relocations, and apply random memory tags (via. `irg -> stg`) to
each STO_TAGGED carrying global.
b) Hidden Symbols (static int g; or -fvisibility=hidden)
1.
Have the compiler mark hidden tag...
2020 Sep 18
2
[MTE] Globals Tagging - Discussion
...be enabled-by-default, but can be
> disabled at compile time behind a flag (likely
> -f(no)sanitize-memtag-ro-globals).
> >
> >
> > a) Dynamic symbols (int f; extern int f;)
> >
> > Mark all tagged global data symbols in the dynamic symbol table as
> st_other.STO_TAGGED.
> >
> > Teach the loader to read the symbol table at load time (and dlopen())
> prior to relocations, and apply random memory tags (via. `irg -> stg`) to
> each STO_TAGGED carrying global.
> >
> > b) Hidden Symbols (static int g; or -fvisibility=hidden)
> >
&...
2020 Sep 21
2
[MTE] Globals Tagging - Discussion
...ever happen.
>
> The symbols are resized in order to prevent smaller untagged symbols from getting into the padding of the 16-byte aligned tagged ones.
> I'm not sure if it's desirable to change the symbol size just for this reason. The linker could always suppress such packing for STO_TAGGED symbols.
>
> In any case, since all sizes and alignments are known, the compiler should be allowed to emit RELATIVE in the rounded-up array case.
>
>>
>>
>> On Fri, Sep 18, 2020 at 4:10 AM David Spickett <david.spickett at linaro.org> wrote:
>>>
>>>...
2020 Oct 09
3
[MTE] Globals Tagging - Discussion
...lement independently, not an
> llvm vs compiler-rt internal design or android only design.)
>
> >
> > a) Dynamic symbols (int f; extern int f;)
> >
> > 1.
> >
> > Mark all tagged global data symbols in the dynamic symbol table as
> > st_other.STO_TAGGED.
>
> note: these bits are not really reserved for os or processor
> specific use in ELF. in practice they are processor specific
> so it will be STO_AARCH64_TAGGED.
>
> note2: undefined symbol references will need correct marking
> too if objects may get copy relocated into the...