Re: Using POPCNT and other advanced bit manipulation instructions
От | Thomas Munro |
---|---|
Тема | Re: Using POPCNT and other advanced bit manipulation instructions |
Дата | |
Msg-id | CAEepm=0eyotC0jjVuX90vY2myxRodspDqfrBLa6hOS_MPFQyuQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Using POPCNT and other advanced bit manipulation instructions (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Using POPCNT and other advanced bit manipulation instructions
|
Список | pgsql-hackers |
On Thu, Feb 14, 2019 at 4:38 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > And, while I'm complaining: why the devil is use of the compiler builtins > gated by HAVE__GET_CPUID? This is unbelievably Intel-centric, because > it prevents use of the builtins on other architectures. If the builtin > exists, we should use it, full stop. There's no reason to expect that it > would be slower than hand-rolled code, regardless of the architecture. FWIW a quick test of __builtin_popcount(n) compiles as CNT on a Debian ARM system, without any special compiler flags. > I'd be inclined to rip out all of the run-time-detection logic here; > I doubt any of it is buying anything that's worth the price of an > indirect call. No view on that but apparently there were Intel Atom and AMD C chips sold in the early part of this decade that lack POPCNT so I suspect the distros can't ship software that requires it with no fallback. -- Thomas Munro http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: