PATCH: Fix libsanitizer for x32

Konstantin Serebryany konstantin.s.serebryany@gmail.com
Fri Dec 6 11:32:00 GMT 2013


Ok to commit, assuming other targets will not break.
But I will not be able to do another merge until the two versions
(upstream and GCC) are equivalent again.
So, please don't close
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59402 until it's done.

--kcc

On Thu, Dec 5, 2013 at 6:37 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Thu, Dec 5, 2013 at 4:59 AM, Konstantin Serebryany
> <konstantin.s.serebryany@gmail.com> wrote:
>> On Thu, Dec 5, 2013 at 4:47 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>>>
>>> There are at least 2 fallouts:
>>>
>>> 1. -mx32 is broken.
>>
>> Please send a patch to the llvm-commits list
>>
>
> I am enclosing 2 patches here.  You can test x32 on Ubuntu
> 13.04 or newer.
>
> struct stat defined in <asm/stat.h> is incorrect for x32.  <asm/stat.h>
> is included to get struct __old_kernel_stat.  But struct __old_kernel_stat
> isn't used for x86-64 and x32.  The first patch includes <sys/stat.h> instead
> of <asm/stat.h> and comments out size check of struct __old_kernel_stat
> for x86-64.
>
> Some fields in shmid_ds as well as clock_t are int64 for x32.  The second
> patch corrects them for x32.
>
> Thanks.
>
> --
> H.J.



More information about the Gcc-patches mailing list