| # Copyright 2016 The Chromium Authors. All rights reserved. | 
 | # Use of this source code is governed by a BSD-style license that can be | 
 | # found in the LICENSE file. | 
 |  | 
 | _JS_FLAGS_SWITCH = '--js-flags=' | 
 |  | 
 |  | 
 | def EnableIgnition(options): | 
 |   AppendJSFlags(options, '--ignition') | 
 |  | 
 |  | 
 | def AppendJSFlags(options, js_flags): | 
 |   existing_js_flags = '' | 
 |   # There should be only one occurence of --js-flags in the browser flags. When | 
 |   # there are multiple flags, only one of them would be used. Append any | 
 |   # additional js_flags to the existing flags (if present). | 
 |   for extra_arg in options.extra_browser_args: | 
 |     if extra_arg.startswith(_JS_FLAGS_SWITCH): | 
 |       # Find and remove the set of existing js_flags. | 
 |       existing_js_flags = extra_arg[len(_JS_FLAGS_SWITCH):] | 
 |       options.extra_browser_args.remove(extra_arg) | 
 |       break | 
 |  | 
 |   options.AppendExtraBrowserArgs([ | 
 |       # Add a new --js-flags which includes previous flags. | 
 |       '%s%s %s' %  (_JS_FLAGS_SWITCH, js_flags, existing_js_flags) | 
 |   ]) |