diff options
| author | Misty De Meo | 2013-07-02 16:08:03 -0500 |
|---|---|---|
| committer | Misty De Meo | 2013-07-02 16:08:20 -0500 |
| commit | 22576e87a0b9d0a269bc9fd6a969ad2abc05570c (patch) | |
| tree | 2e96b746b45afae64003123d9e6071472370e4db /Library | |
| parent | 53c97c3c96620734cbf55a487d9529f03568577e (diff) | |
| download | brew-22576e87a0b9d0a269bc9fd6a969ad2abc05570c.tar.bz2 | |
Hardware: Query sysctl for instructon sets
This may be more accurate than guessing.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/os/mac/hardware.rb | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Library/Homebrew/os/mac/hardware.rb b/Library/Homebrew/os/mac/hardware.rb index d14952b8d..5487a8d4d 100644 --- a/Library/Homebrew/os/mac/hardware.rb +++ b/Library/Homebrew/os/mac/hardware.rb @@ -76,20 +76,23 @@ module MacCPUs end def altivec? - type == :ppc && family != :g3 + @altivec ||= sysctl_bool('hw.optional.altivec') end def avx? - pre_sandy = [:core, :core2, :penryn, :nehalem, :arrandale].include? family - type == :intel && !pre_sandy + @avx ||= sysctl_bool('hw.optional.avx1_0') end def sse3? - type == :intel + @sse3 ||= sysctl_bool('hw.optional.sse3') end def sse4? - type == :intel && (family != :core && family != :core2) + @sse4 ||= sysctl_bool('hw.optional.sse4_1') + end + + def sse4_2? + @sse4 ||= sysctl_bool('hw.optional.sse4_2') end protected |
