| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | John Naylor <johncnaylorls(at)gmail(dot)com> |
| Cc: | Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, Daniel Gustafsson <daniel(at)yesql(dot)se>, Jakub Wartak <jakub(dot)wartak(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de> |
| Subject: | Re: Fix typo 586/686 in atomics/arch-x86.h |
| Date: | 2025-12-20 02:01:23 |
| Message-ID: | 3414572.1766196083@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
John Naylor <johncnaylorls(at)gmail(dot)com> writes:
> On Fri, Dec 19, 2025 at 5:13 PM Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com> wrote:
>> I did some quick testing with this, normally only __i386__ gets
>> defined for 32 bit builds (-march=native -m32 for example, but also
>> the default -march=x86-64 -m32). __i586__ and __i686__ are only there
>> if I pass the matching -march (i586/i686) flag to gcc.
> What platform is this? I don't see that:
I can replicate Zsolt's result --- note the point about -march:
$ echo | gcc -m32 -dM -E - | grep -E '86[^0-9]'
#define __i386 1
#define __i386__ 1
#define i386 1
$ echo | gcc -m32 -march=i586 -dM -E - | grep -E '86[^0-9]'
#define __i586 1
#define __tune_i586__ 1
#define __i386 1
#define __i586__ 1
#define __i386__ 1
#define i386 1
$ echo | gcc -m32 -march=i686 -dM -E - | grep -E '86[^0-9]'
#define __tune_i686__ 1
#define __i686 1
#define __i686__ 1
#define __i386 1
#define __i386__ 1
#define i386 1
This is with gcc 8.5.0 from RHEL8, and the same with gcc 14.3.1
from Fedora 41.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | John Naylor | 2025-12-20 02:30:37 | Re: Fix typo 586/686 in atomics/arch-x86.h |
| Previous Message | Masahiko Sawada | 2025-12-20 01:58:59 | Re: Initial COPY of Logical Replication is too slow |