[PATCH] D58432: SanitizerCommon: 64-bit SPARC/Linux port

Eric Botcazou via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 22 00:08:00 PST 2019


ebotcazou marked an inline comment as done.
ebotcazou added inline comments.


================
Comment at: compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h:188
     uptr mem = reinterpret_cast<uptr>(p);
+    if (kSignExtendedAddresses)
+      mem &= (kSpaceSize - 1);
----------------
vitalybuka wrote:
> why do we need kSignExtendedAddresses?
> Could we just do
> ```
> if (SANITIZER_SIGN_EXTENDED_ADDRESSES)
>   mem &= (kSpaceSize - 1);
> ```
Yes, I guess so.



================
Comment at: compiler-rt/lib/sanitizer_common/sanitizer_platform.h:253
+#if defined(__sparc__) && SANITIZER_WORDSIZE == 64
+# define SANITIZER_SIGN_EXTENDED_ADDRESSES 1
+#else
----------------
vitalybuka wrote:
> vitalybuka wrote:
> > As this it's going to affect Solaris
> @krytarowski
> Same here. Not sure if we had working SPARK Solaris.
> 
No, the sanitizer cannot work on 64-bit SPARC/Solaris for the time being, you can ask Rainer Orth about that.  However there is some hope that the Linux approach can be adapted because the VM layout is roughly the same on Solaris and Linux.



Repository:
  rCRT Compiler Runtime

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58432/new/

https://reviews.llvm.org/D58432





More information about the llvm-commits mailing list