Re: Fix typo 586/686 in atomics/arch-x86.h

John Naylor <johncnaylorls@gmail.com>

From: John Naylor <johncnaylorls@gmail.com>
To: Zsolt Parragi <zsolt.parragi@percona.com>
Cc: Daniel Gustafsson <daniel@yesql.se>, Jakub Wartak <jakub.wartak@enterprisedb.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Andres Freund <andres@anarazel.de>
Date: 2025-12-20T01:37:35Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Remove support for 8 byte tear free read/write on 32-bit

On Fri, Dec 19, 2025 at 5:13 PM Zsolt Parragi <zsolt.parragi@percona.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:

gcc 14:

$ echo | gcc -m32 -dM -E - | grep -E '86[^0-9]'
#define __i686 1
#define __i686__ 1
#define __i386 1
#define i386 1
#define __i386__ 1

clang 19:

$ echo | clang -m32 -dM -E - | grep -E '86[^0-9]'
#define __i386 1
#define __i386__ 1
#define i386 1

-- 
John Naylor
Amazon Web Services