summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--eclass/toolchain.eclass6
-rw-r--r--profiles/arch/amd64/use.mask2
-rw-r--r--profiles/arch/x86/use.mask2
-rw-r--r--profiles/base/use.mask2
-rw-r--r--profiles/desc/cpu_flags_x86.desc1
-rw-r--r--sys-devel/gcc/metadata.xml1
6 files changed, 13 insertions, 1 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 992074084d2b..08813a9e355d 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -153,7 +153,7 @@ if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
# the older versions, we don't want to bother supporting it. #448024
tc_version_is_at_least 4.8 && IUSE+=" graphite" IUSE_DEF+=( sanitize )
tc_version_is_at_least 4.9 && IUSE+=" cilk +vtv"
- tc_version_is_at_least 5.0 && IUSE+=" jit"
+ tc_version_is_at_least 5.0 && IUSE+=" jit mpx"
tc_version_is_at_least 6.0 && IUSE+=" pie +ssp"
fi
@@ -1165,6 +1165,10 @@ toolchain_src_configure() {
confgcc+=( $(use_enable cilk libcilkrts) )
fi
+ if in_iuse mpx ; then
+ confgcc+=( $(use_enable mpx libmpx) )
+ fi
+
if in_iuse vtv ; then
confgcc+=(
$(use_enable vtv vtable-verify)
diff --git a/profiles/arch/amd64/use.mask b/profiles/arch/amd64/use.mask
index 614d355a5c52..acdbc576c6fe 100644
--- a/profiles/arch/amd64/use.mask
+++ b/profiles/arch/amd64/use.mask
@@ -147,6 +147,7 @@
# SIMD assembler flags
-mmx
-mmxext
+-mpx
-sse
-sse2
-sse3
@@ -172,6 +173,7 @@
-cpu_flags_x86_fma4
-cpu_flags_x86_mmx
-cpu_flags_x86_mmxext
+-cpu_flags_x86_mpx
-cpu_flags_x86_padlock
-cpu_flags_x86_popcnt
-cpu_flags_x86_sse
diff --git a/profiles/arch/x86/use.mask b/profiles/arch/x86/use.mask
index 6b71e56ea27a..bb9bd5852a59 100644
--- a/profiles/arch/x86/use.mask
+++ b/profiles/arch/x86/use.mask
@@ -112,6 +112,7 @@
-lilo
-mmx
-mmxext
+-mpx
-sse
-sse2
-sse3
@@ -139,6 +140,7 @@
-cpu_flags_x86_fma4
-cpu_flags_x86_mmx
-cpu_flags_x86_mmxext
+-cpu_flags_x86_mpx
-cpu_flags_x86_padlock
-cpu_flags_x86_popcnt
-cpu_flags_x86_sse
diff --git a/profiles/base/use.mask b/profiles/base/use.mask
index ecf733eeffe4..f3ee0650c50c 100644
--- a/profiles/base/use.mask
+++ b/profiles/base/use.mask
@@ -74,6 +74,7 @@ kqemu
lilo
mmx
mmxext
+mpx
sse
sse2
sse3
@@ -100,6 +101,7 @@ cpu_flags_x86_fma3
cpu_flags_x86_fma4
cpu_flags_x86_mmx
cpu_flags_x86_mmxext
+cpu_flags_x86_mpx
cpu_flags_x86_padlock
cpu_flags_x86_popcnt
cpu_flags_x86_sse
diff --git a/profiles/desc/cpu_flags_x86.desc b/profiles/desc/cpu_flags_x86.desc
index 7aaab7ee1a69..4a12cc6a9526 100644
--- a/profiles/desc/cpu_flags_x86.desc
+++ b/profiles/desc/cpu_flags_x86.desc
@@ -15,6 +15,7 @@ fma3 - Use the Fused Multiply Add 3 instruction set ([fma] in cpuinfo)
fma4 - Use the Fused Multiply Add 4 instruction set
mmx - Use the MMX instruction set
mmxext - Use the Extended MMX instruction set (a subset of SSE) ([mmxext] or [sse] in cpuinfo)
+mpx - Use Memory Protection Extensions (MPX)
padlock - Use VIA padlock instructions ([phe] in cpuinfo)
popcnt - Enable popcnt instruction support ([abm] or [popcnt] in cpuinfo)
sse - Use the SSE instruction set
diff --git a/sys-devel/gcc/metadata.xml b/sys-devel/gcc/metadata.xml
index 9e45459a2437..7b6c493e9e5d 100644
--- a/sys-devel/gcc/metadata.xml
+++ b/sys-devel/gcc/metadata.xml
@@ -19,6 +19,7 @@
This will slow down the compiler a bit as it forces all of the toolchain to be shared libs.</flag>
<flag name="libssp">Build SSP support into a dedicated library rather than use the
code in the C library (DO NOT ENABLE THIS IF YOU DON'T KNOW WHAT IT DOES)</flag>
+ <flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</flag>
<flag name="mudflap">Add support for mudflap, a pointer use checking library</flag>
<flag name="multislot">Allow for multiple versions to be emerged at once for same CTARGET</flag>
<flag name="nopie">Disable PIE support (NOT FOR GENERAL USE)</flag>