comparison mx/commands.py @ 4482:7903b6c28f9c

Add hsdis command to mx
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 07 Feb 2012 19:03:51 +0100
parents 7d6490436b57
children 58ecb156a3e8
comparison
equal deleted inserted replaced
4481:600ec4e44b2e 4482:7903b6c28f9c
655 def specjvm2008(args): 655 def specjvm2008(args):
656 benchArgs = [a[1:] for a in args if a[0] == '@'] 656 benchArgs = [a[1:] for a in args if a[0] == '@']
657 vmArgs = [a for a in args if a[0] != '@'] 657 vmArgs = [a for a in args if a[0] != '@']
658 sanitycheck.getSPECjvm2008(benchArgs).bench('graal', opts=vmArgs) 658 sanitycheck.getSPECjvm2008(benchArgs).bench('graal', opts=vmArgs)
659 659
660 def hsdis(args):
661 """Installs the hsdis library
662
663 This is needed to support HotSpot's assembly dumping features.
664 By default it installs the Intel syntax version, use the 'att' argument to install AT&T syntax."""
665 flavor = 'intel'
666 if 'att' in args:
667 flavor = 'att'
668 build = _vmbuild if _vmSourcesAvailable else 'product'
669 lib = mx.lib_suffix('hsdis-amd64')
670 path = join(_jdk(build), 'jre', 'lib', 'amd64', lib)
671 mx.download(path, ['http://lafo.ssw.uni-linz.ac.at/hsdis/' + flavor + "/" + lib])
672
660 def mx_init(): 673 def mx_init():
661 _vmbuild = 'product' 674 _vmbuild = 'product'
662 commands = { 675 commands = {
663 'build': [build, '[-options]'], 676 'build': [build, '[-options]'],
664 'clean': [clean, ''], 677 'clean': [clean, ''],
665 'copyrightcheck': [copyrightcheck, ''], 678 'copyrightcheck': [copyrightcheck, ''],
679 'hsdis': [hsdis, '[att]'],
666 'dacapo': [dacapo, '[[n] benchmark] [VM options|@DaCapo options]'], 680 'dacapo': [dacapo, '[[n] benchmark] [VM options|@DaCapo options]'],
667 'scaladacapo': [scaladacapo, '[[n] benchmark] [VM options|@Scala DaCapo options]'], 681 'scaladacapo': [scaladacapo, '[[n] benchmark] [VM options|@Scala DaCapo options]'],
668 'specjvm2008': [specjvm2008, '[VM options|@specjvm2008 options]'], 682 'specjvm2008': [specjvm2008, '[VM options|@specjvm2008 options]'],
669 'example': [example, '[-v] example names...'], 683 'example': [example, '[-v] example names...'],
670 'gate' : [gate, ''], 684 'gate' : [gate, ''],