pauljensen | 420d1a1 | 2016-08-19 14:33:10 | [diff] [blame^] | 1 | #!/usr/bin/python |
| 2 | # Copyright 2016 The Chromium Authors. All rights reserved. |
| 3 | # Use of this source code is governed by a BSD-style license that can be |
| 4 | # found in the LICENSE file. |
| 5 | |
| 6 | """check_no_neon.py - Check modules do not contain ARM Neon instructions.""" |
| 7 | |
| 8 | import argparse |
| 9 | import os |
| 10 | import sys |
| 11 | |
| 12 | |
| 13 | def main(args): |
| 14 | parser = argparse.ArgumentParser( |
| 15 | description='Check modules do not contain ARM Neon instructions.') |
| 16 | parser.add_argument('objdump', metavar='path/to/ARM/objdump') |
| 17 | parser.add_argument('objects', metavar='files/to/check/*.o') |
| 18 | opts = parser.parse_args(args) |
| 19 | return os.system(opts.objdump + ' -d --no-show-raw-insn ' + |
| 20 | opts.objects + ' | grep -q "vld[1-9]\\|vst[1-9]"') |
| 21 | |
| 22 | |
| 23 | if __name__ == '__main__': |
| 24 | sys.exit(0 if main(sys.argv[1:]) != 0 else -1) |