Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r89776:ccc88590dc02 Date: 2017-01-26 09:30 +0100 http://bitbucket.org/pypy/pypy/changeset/ccc88590dc02/
Log: Add translation option --hash=siphash24 diff --git a/rpython/config/translationoption.py b/rpython/config/translationoption.py --- a/rpython/config/translationoption.py +++ b/rpython/config/translationoption.py @@ -201,6 +201,10 @@ StrOption("icon", "Path to the (Windows) icon to use for the executable"), StrOption("libname", "Windows: name and possibly location of the lib file to create"), + ChoiceOption("hash", + "The hash to use for strings", + ["rpython", "siphash24"], + default="rpython", cmdline="--hash"), OptionDescription("backendopt", "Backend Optimization Options", [ # control inlining @@ -390,6 +394,12 @@ if sys.platform == "darwin" or sys.platform =="win32": raise ConfigError("'asmgcc' not supported on this platform") +def apply_extra_settings(config): + # make the setting of config.hash definitive + from rpython.rlib.objectmodel import set_hash_algorithm + config.translation.hash = config.translation.hash + set_hash_algorithm(config.translation.hash) + # ---------------------------------------------------------------- def set_platform(config): diff --git a/rpython/translator/goal/translate.py b/rpython/translator/goal/translate.py --- a/rpython/translator/goal/translate.py +++ b/rpython/translator/goal/translate.py @@ -11,7 +11,8 @@ from rpython.config.config import (to_optparse, OptionDescription, BoolOption, ArbitraryOption, StrOption, IntOption, Config, ChoiceOption, OptHelpFormatter) from rpython.config.translationoption import (get_combined_translation_config, - set_opt_level, OPT_LEVELS, DEFAULT_OPT_LEVEL, set_platform, CACHE_DIR) + set_opt_level, OPT_LEVELS, DEFAULT_OPT_LEVEL, set_platform, CACHE_DIR, + apply_extra_settings) # clean up early rpython/_cache try: @@ -177,6 +178,9 @@ if 'handle_config' in targetspec_dic: targetspec_dic['handle_config'](config, translateconfig) + # apply extra settings + apply_extra_settings(config) + return targetspec_dic, translateconfig, config, args def show_help(translateconfig, opt_parser, targetspec_dic, config): _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit