blob: fba5094d3d04aec3ed9bc3a9347caa2cd88af462 [file] [log] [blame]
# -*- python -*-
# Copyright (c) 2012 The Native Client Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
Import('env')
# Test ARM float ABI to ensure that it is the hard ABI and not soft.
# Only test ARM. Since we are only generating a .o file, do not run
# in pexe mode, only run as a nonpexe_test.
if ((not env.Bit('build_arm') or env.Bit('pnacl_generate_pexe'))
or not (env.Bit('bitcode') or env.Bit('nacl_clang'))):
Return()
# Force native .o generation and optimization (so that checks are cleaner).
if env.Bit('bitcode'):
env.PNaClForceNative()
env.Append(CFLAGS=['-O2'])
arm_float_abi_obj = env.ComponentObject('arm_float_abi_obj',
'arm_float_abi_test.c')
# Disassemble the .o file and look for register passing.
node = env.CommandTestFileDumpCheck('arm_float_abi_test.out',
arm_float_abi_obj,
env.File('arm_float_abi_test.c'),
'-d')
env.AddNodeToTestSuite(node,
['small_tests', 'nonpexe_tests', 'toolchain_tests'],
'run_arm_float_abi_test')