Committed with changelog update and minor tweak (move RISC-V bits to
second patch)

On Wed, Nov 20, 2024 at 4:18 AM Jeff Law <jeffreya...@gmail.com> wrote:
>
>
>
> On 11/14/24 9:14 PM, Kito Cheng wrote:
> > AddressSanitizer has supported dynamic shadow offsets since 2016[1], but
> > GCC hasn't implemented this yet because targets using dynamic shadow
> > offsets, such as Fuchsia and iOS, are mostly unsupported in GCC.
> >
> > However, RISC-V 64 switched to dynamic shadow offsets this year[2] because
> > virtual memory space support varies across different RISC-V cores, such as
> > Sv39, Sv48, and Sv57. We realized that the best way to handle this
> > situation is by using a dynamic shadow offset to obtain the offset at
> > runtime.
> >
> > We introduce a new target hook, TARGET_ASAN_DYNAMIC_SHADOW_OFFSET_P, to
> > determine if the target is using a dynamic shadow offset, so this change
> > won't affect the static offset path. Additionally, TARGET_ASAN_SHADOW_OFFSET
> > continues to work even if TARGET_ASAN_DYNAMIC_SHADOW_OFFSET_P is non-zero,
> > ensuring that KASAN functions as expected.
> >
> > This patch set has been verified on the Banana Pi F3, currently one of the
> > most popular RISC-V development boards. All AddressSanitizer-related tests
> > passed without introducing new regressions.
> >
> > It was also verified on AArch64 and x86_64 with no regressions in
> > AddressSanitizer.
> >
> > [1] 
> > https://github.com/llvm/llvm-project/commit/130a190bf08a3d955d9db24dac936159dc049e12
> > [2] 
> > https://github.com/llvm/llvm-project/commit/da0c8b275564f814a53a5c19497669ae2d99538d
> > ---
> >   gcc/asan.cc               | 80 ++++++++++++++++++++++++++++++++++++---
> >   gcc/asan.h                |  3 ++
> >   gcc/config/riscv/riscv.cc |  3 ++
> >   gcc/doc/tm.texi           |  6 ++-
> >   gcc/doc/tm.texi.in        |  2 +
> >   gcc/sanopt.cc             |  4 ++
> >   gcc/target.def            |  8 +++-
> >   gcc/toplev.cc             |  3 +-
> >   8 files changed, 101 insertions(+), 8 deletions(-)
> Needs a ChangeLog.  New functions should have function comments.
>
> OK with those changes if nobody has objected in 48hrs.
>
> Thanks,
> jeff

Reply via email to