1.1 --- a/src/share/vm/ci/ciType.hpp Fri Aug 31 16:39:35 2012 -0700 1.2 +++ b/src/share/vm/ci/ciType.hpp Sat Sep 01 13:25:18 2012 -0400 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 2000, 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 @@ -25,14 +25,13 @@ 1.11 #ifndef SHARE_VM_CI_CITYPE_HPP 1.12 #define SHARE_VM_CI_CITYPE_HPP 1.13 1.14 -#include "ci/ciObject.hpp" 1.15 -#include "oops/klassOop.hpp" 1.16 +#include "ci/ciMetadata.hpp" 1.17 1.18 // ciType 1.19 // 1.20 // This class represents either a class (T_OBJECT), array (T_ARRAY), 1.21 // or one of the primitive types such as T_INT. 1.22 -class ciType : public ciObject { 1.23 +class ciType : public ciMetadata { 1.24 CI_PACKAGE_ACCESS 1.25 friend class ciKlass; 1.26 friend class ciReturnAddress; 1.27 @@ -40,9 +39,8 @@ 1.28 private: 1.29 BasicType _basic_type; 1.30 1.31 - ciType(BasicType t); // for the primitive types only 1.32 + ciType(BasicType t); // for primitive and unloaded types 1.33 ciType(KlassHandle k); // for subclasses (reference types) 1.34 - ciType(ciKlass* klass); // for unloaded types 1.35 1.36 const char* type_string() { return "ciType"; } 1.37 1.38 @@ -76,7 +74,7 @@ 1.39 bool is_two_word() const { return size() == 2; } 1.40 1.41 // What kind of ciObject is this? 1.42 - bool is_type() { return true; } 1.43 + bool is_type() const { return true; } 1.44 bool is_classless() const { return is_primitive_type(); } 1.45 1.46 virtual void print_name_on(outputStream* st); 1.47 @@ -106,7 +104,7 @@ 1.48 void print_impl(outputStream* st); 1.49 1.50 public: 1.51 - bool is_return_address() { return true; } 1.52 + bool is_return_address() const { return true; } 1.53 1.54 int bci() { return _bci; } 1.55