Title: CPU_FLAGS_X86 introduction Author: Michał Górny Content-Type: text/plain Posted: 2015-01-28 Revision: 2 News-Item-Format: 1.0 Display-If-Keyword: amd64 Display-If-Keyword: ~amd64 Display-If-Keyword: x86 Display-If-Keyword: ~x86 The USE flags corresponding to the instruction sets and other features specific to the x86 (amd64) architecture are being moved into a separate USE flag group called CPU_FLAGS_X86. In order not to lose CPU-specific optimizations, users will be required to update their make.conf (and package.use) file. For example, if the following USE flags were present: USE="mmx mmxext sse sse2 sse3" Those flags need to be copied into: CPU_FLAGS_X86="mmx mmxext sse sse2 sse3" Please note that the same CPU_FLAGS_X86 variable is used both on x86 and amd64 systems. When in doubt, you can consult the flag descriptions using one of the commonly available tools, e.g. `equery uses` from gentoolkit: $ equery uses media-video/ffmpeg Most of the flag names match /proc/cpuinfo names, with the notable exception of SSE3 which is called 'pni' in /proc/cpuinfo (please also do not confuse it with distinct SSSE3). To help users enable the correct USE flags, we are providing a Python script that generates the correct value using /proc/cpuinfo. It can be found in the app-portage/cpuinfo2cpuflags package: $ emerge -1v app-portage/cpuinfo2cpuflags $ cpuinfo2cpuflags-x86 In order to ensure safe migration and maintain compatibility with external repositories, it is recommended to preserve the old USE settings for a period of one year or until no package of interest is still using them.