comparison src/share/vm/compiler/disassembler.hpp @ 1972:f95d63e2154a

6989984: Use standard include model for Hospot Summary: Replaced MakeDeps and the includeDB files with more standardized solutions. Reviewed-by: coleenp, kvn, kamg
author stefank
date Tue, 23 Nov 2010 13:22:55 -0800
parents c18cbe5936b8
children b92c45f2bc75
comparison
equal deleted inserted replaced
1971:e33f46fc48ed 1972:f95d63e2154a
1 /* 1 /*
2 * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any 20 * or visit www.oracle.com if you need additional information or have any
21 * questions. 21 * questions.
22 * 22 *
23 */ 23 */
24
25 #ifndef SHARE_VM_COMPILER_DISASSEMBLER_HPP
26 #define SHARE_VM_COMPILER_DISASSEMBLER_HPP
27
28 #include "runtime/globals.hpp"
29 #ifdef TARGET_OS_FAMILY_linux
30 # include "os_linux.inline.hpp"
31 #endif
32 #ifdef TARGET_OS_FAMILY_solaris
33 # include "os_solaris.inline.hpp"
34 #endif
35 #ifdef TARGET_OS_FAMILY_windows
36 # include "os_windows.inline.hpp"
37 #endif
24 38
25 class decode_env; 39 class decode_env;
26 40
27 // The disassembler prints out assembly code annotated 41 // The disassembler prints out assembly code annotated
28 // with Java specific information. 42 // with Java specific information.
45 static decode_func _decode_instructions; 59 static decode_func _decode_instructions;
46 // tries to load library and return whether it succedded. 60 // tries to load library and return whether it succedded.
47 static bool load_library(); 61 static bool load_library();
48 62
49 // Machine dependent stuff 63 // Machine dependent stuff
50 #include "incls/_disassembler_pd.hpp.incl" 64 #ifdef TARGET_ARCH_x86
65 # include "disassembler_x86.hpp"
66 #endif
67 #ifdef TARGET_ARCH_sparc
68 # include "disassembler_sparc.hpp"
69 #endif
70 #ifdef TARGET_ARCH_zero
71 # include "disassembler_zero.hpp"
72 #endif
73
51 74
52 public: 75 public:
53 static bool can_decode() { 76 static bool can_decode() {
54 return (_decode_instructions != NULL) || load_library(); 77 return (_decode_instructions != NULL) || load_library();
55 } 78 }
56 static void decode(CodeBlob *cb, outputStream* st = NULL); 79 static void decode(CodeBlob *cb, outputStream* st = NULL);
57 static void decode(nmethod* nm, outputStream* st = NULL); 80 static void decode(nmethod* nm, outputStream* st = NULL);
58 static void decode(address begin, address end, outputStream* st = NULL); 81 static void decode(address begin, address end, outputStream* st = NULL);
59 }; 82 };
83
84 #endif // SHARE_VM_COMPILER_DISASSEMBLER_HPP