GCC 9 will remove support for Intel MPX
Last year, GCC showed signs of discarding the Intel Memory Protection Extensions (MPX). It seems that GCC 9 may completely give up support for Intel MPX.
Intel Memory Protection Extensions is a security feature since the introduction of the Skylake processor that checks pointer references at runtime to avoid buffer overflows. Intel MPX can check all pointer reads and writes to ensure they are within the declared memory range. This technique can detect the overflow of the buffer and stop the running program to avoid endangering the system. It allows C/C++ code to use the latest MPX instruction sets and registers described in the sixth generation Intel Core processors (MPX-enabled platforms).
Support for Intel MPX has been widely used in Linux in recent years, but GCC’s support for it has declined. Although developers from Intel provide patches from time to time, developers from Red Hat and SUSE prefer to abandon supported code to ease maintenance.
SUSE’s Martin Liška has released a patch to remove support for MPX while retaining the relevant MPX options but doing nothing.
GCC 8.1 version will be released next week, while the new features of GCC 9.0 are in the development stage and are currently in the master branch. Unless someone pushes to restore this seemingly rarely used security feature, GCC 9.0 is expected to be released next year. The first version of MPX support.
Source: phoronix