From 4addff3b2be571a1c853875abb8f5e63e8cef18d Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Tue, 2 Oct 2018 09:33:28 -0700 Subject: [PATCH] determine_optflags: Default is -march=native --- Library/Homebrew/extend/ENV/std.rb | 6 +++--- Library/Homebrew/extend/ENV/super.rb | 2 +- Library/Homebrew/hardware.rb | 1 - 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Library/Homebrew/extend/ENV/std.rb b/Library/Homebrew/extend/ENV/std.rb index 1c03f4317b..acc41ad695 100644 --- a/Library/Homebrew/extend/ENV/std.rb +++ b/Library/Homebrew/extend/ENV/std.rb @@ -7,7 +7,7 @@ module Stdenv # @private SAFE_CFLAGS_FLAGS = "-w -pipe".freeze - DEFAULT_FLAGS = "-march=core2 -msse4".freeze + DEFAULT_FLAGS = "-march=native".freeze # @private def setup_build_environment(formula = nil) @@ -108,7 +108,7 @@ module Stdenv def gcc_4_2 super - set_cpu_cflags + set_cpu_cflags "-march=core2 -msse4" end GNU_GCC_VERSIONS.each do |n| @@ -124,7 +124,7 @@ module Stdenv # Clang mistakenly enables AES-NI on plain Nehalem map = Hardware::CPU.optimization_flags map = map.merge(nehalem: "-march=native -Xclang -target-feature -Xclang -aes") - set_cpu_cflags "-march=native", map + set_cpu_cflags DEFAULT_FLAGS, map end def minimal_optimization diff --git a/Library/Homebrew/extend/ENV/super.rb b/Library/Homebrew/extend/ENV/super.rb index 8d7e44b44a..a47fbcbc71 100644 --- a/Library/Homebrew/extend/ENV/super.rb +++ b/Library/Homebrew/extend/ENV/super.rb @@ -235,7 +235,7 @@ module Superenv Hardware::CPU.optimization_flags.fetch(arch) elsif Hardware::CPU.intel? && !Hardware::CPU.sse4? Hardware::CPU.optimization_flags.fetch(Hardware.oldest_cpu) - elsif compiler == :clang + elsif ![:gcc_4_0, :gcc_4_2].include?(compiler) "-march=native" # This is mutated elsewhere, so return an empty string in this case else diff --git a/Library/Homebrew/hardware.rb b/Library/Homebrew/hardware.rb index a90ec46a3d..f087161469 100644 --- a/Library/Homebrew/hardware.rb +++ b/Library/Homebrew/hardware.rb @@ -11,7 +11,6 @@ module Hardware core: "-march=prescott", armv6: "-march=armv6", armv8: "-march=armv8-a", - dunno: "-march=native", }.freeze def optimization_flags