src/share/vm/compiler/disassembler.cpp

changeset 4093
5a98bf7d847b
parent 2991
3e23978ea0c3
child 4117
f2e12eb74117
     1.1 --- a/src/share/vm/compiler/disassembler.cpp	Thu Sep 20 03:49:15 2012 -0700
     1.2 +++ b/src/share/vm/compiler/disassembler.cpp	Mon Sep 24 12:44:00 2012 -0700
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -58,7 +58,7 @@
    1.11  Disassembler::decode_func Disassembler::_decode_instructions = NULL;
    1.12  
    1.13  static const char hsdis_library_name[] = "hsdis-"HOTSPOT_LIB_ARCH;
    1.14 -static const char decode_instructions_name[] = "decode_instructions";
    1.15 +static const char decode_instructions_name[] = "decode_instructions_virtual";
    1.16  
    1.17  #define COMMENT_COLUMN  40 LP64_ONLY(+8) /*could be an option*/
    1.18  #define BYTES_COMMENT   ";..."  /* funky byte display comment */
    1.19 @@ -218,6 +218,8 @@
    1.20          }
    1.21        }
    1.22      }
    1.23 +    // follow each complete insn by a nice newline
    1.24 +    st->cr();
    1.25    }
    1.26  
    1.27    address handle_event(const char* event, address arg);
    1.28 @@ -446,14 +448,16 @@
    1.29      FILE* out = stdout;
    1.30      FILE* xmlout = (_print_raw > 1 ? out : NULL);
    1.31      return (address)
    1.32 -      (*Disassembler::_decode_instructions)(start, end,
    1.33 +      (*Disassembler::_decode_instructions)((uintptr_t)start, (uintptr_t)end,
    1.34 +                                            start, end - start,
    1.35                                              NULL, (void*) xmlout,
    1.36                                              NULL, (void*) out,
    1.37                                              options());
    1.38    }
    1.39  
    1.40    return (address)
    1.41 -    (*Disassembler::_decode_instructions)(start, end,
    1.42 +    (*Disassembler::_decode_instructions)((uintptr_t)start, (uintptr_t)end,
    1.43 +                                          start, end - start,
    1.44                                            &event_to_env,  (void*) this,
    1.45                                            &printf_to_env, (void*) this,
    1.46                                            options());

mercurial