412 // by default, output pc but not bytes: |
412 // by default, output pc but not bytes: |
413 _print_help = false; |
413 _print_help = false; |
414 _bytes_per_line = Disassembler::pd_instruction_alignment(); |
414 _bytes_per_line = Disassembler::pd_instruction_alignment(); |
415 _print_file_name = true; |
415 _print_file_name = true; |
416 |
416 |
417 if (_optionsParsed) return; // parse only once |
417 // parse the global option string |
418 |
418 // We need to fill the options buffer for each newly created |
419 // parse the global option string: |
419 // decode_env instance. The hsdis_* library looks for options |
|
420 // in that buffer. |
420 collect_options(Disassembler::pd_cpu_opts()); |
421 collect_options(Disassembler::pd_cpu_opts()); |
421 collect_options(PrintAssemblyOptions); |
422 collect_options(PrintAssemblyOptions); |
422 |
423 |
423 if (strstr(options(), "print-raw")) { |
424 if (strstr(options(), "print-raw")) { |
424 _print_raw = (strstr(options(), "xml") ? 2 : 1); |
425 _print_raw = (strstr(options(), "xml") ? 2 : 1); |
425 } |
426 } |
|
427 |
|
428 if (_optionsParsed) return; // parse only once |
426 |
429 |
427 if (strstr(options(), "help")) { |
430 if (strstr(options(), "help")) { |
428 _print_help = true; |
431 _print_help = true; |
429 } |
432 } |
430 if (strstr(options(), "align-instr")) { |
433 if (strstr(options(), "align-instr")) { |