mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-21 03:05:15 +00:00
[test] On Mac, don't try to use result of sysctl command if calling it failed.
If sysctl is not found at all, let the usual exception propogate so that the user can fix their env. If it fails because of the permissions required to read the property then print a warning and continue. Differential Revision: https://reviews.llvm.org/D72278
This commit is contained in:
parent
c5e9c8b1df
commit
239643df5f
@ -324,15 +324,18 @@ llvm_config.feature_config(
|
||||
('--has-global-isel', {'ON': 'global-isel'})])
|
||||
|
||||
if 'darwin' == sys.platform:
|
||||
try:
|
||||
sysctl_cmd = subprocess.Popen(['sysctl', 'hw.optional.fma'],
|
||||
stdout=subprocess.PIPE)
|
||||
except OSError:
|
||||
print('Could not exec sysctl')
|
||||
result = sysctl_cmd.stdout.read().decode('ascii')
|
||||
if -1 != result.find('hw.optional.fma: 1'):
|
||||
config.available_features.add('fma3')
|
||||
sysctl_cmd.wait()
|
||||
cmd = ['sysctl', 'hw.optional.fma']
|
||||
sysctl_cmd = subprocess.Popen(cmd, stdout=subprocess.PIPE)
|
||||
|
||||
# Non zero return, probably a permission issue
|
||||
if sysctl_cmd.wait():
|
||||
print(
|
||||
"Warning: sysctl exists but calling \"{}\" failed, defaulting to no fma3.".format(
|
||||
" ".join(cmd)))
|
||||
else:
|
||||
result = sysctl_cmd.stdout.read().decode('ascii')
|
||||
if 'hw.optional.fma: 1' in result:
|
||||
config.available_features.add('fma3')
|
||||
|
||||
# .debug_frame is not emitted for targeting Windows x64.
|
||||
if not re.match(r'^x86_64.*-(windows-gnu|windows-msvc)', config.target_triple):
|
||||
|
Loading…
x
Reference in New Issue
Block a user