Mercurial > hg > truffle
diff src/share/vm/ci/ciMethodData.hpp @ 14909:4ca6dc0799b6
Backout jdk9 merge
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Tue, 01 Apr 2014 13:57:07 +0200 |
parents | fdad2932c73f |
children | 89152779163c |
line wrap: on
line diff
--- a/src/share/vm/ci/ciMethodData.hpp Tue Apr 01 14:09:03 2014 +0200 +++ b/src/share/vm/ci/ciMethodData.hpp Tue Apr 01 13:57:07 2014 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,7 +31,6 @@ #include "ci/ciUtilities.hpp" #include "oops/methodData.hpp" #include "oops/oop.inline.hpp" -#include "runtime/deoptimization.hpp" class ciBitData; class ciCounterData; @@ -45,7 +44,6 @@ class ciCallTypeData; class ciVirtualCallTypeData; class ciParametersTypeData; -class ciSpeculativeTrapData;; typedef ProfileData ciProfileData; @@ -175,7 +173,7 @@ } #ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; + void print_data_on(outputStream* st) const; #endif }; @@ -202,7 +200,7 @@ } void translate_receiver_data_from(const ProfileData* data); #ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; + void print_data_on(outputStream* st) const; void print_receiver_data_on(outputStream* st) const; #endif }; @@ -227,7 +225,7 @@ rtd_super()->translate_receiver_data_from(data); } #ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; + void print_data_on(outputStream* st) const; #endif }; @@ -289,7 +287,7 @@ } #ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; + void print_data_on(outputStream* st) const; #endif }; @@ -338,26 +336,7 @@ } #ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; -#endif -}; - -class ciSpeculativeTrapData : public SpeculativeTrapData { -public: - ciSpeculativeTrapData(DataLayout* layout) : SpeculativeTrapData(layout) {} - - virtual void translate_from(const ProfileData* data); - - ciMethod* method() const { - return (ciMethod*)intptr_at(method_offset); - } - - void set_method(ciMethod* m) { - set_intptr_at(method_offset, (intptr_t)m); - } - -#ifndef PRODUCT - void print_data_on(outputStream* st, const char* extra) const; + void print_data_on(outputStream* st) const; #endif }; @@ -457,16 +436,6 @@ ciArgInfoData *arg_info() const; - address data_base() const { - return (address) _data; - } - DataLayout* limit_data_position() const { - return (DataLayout*)((address)data_base() + _data_size); - } - - void load_extra_data(); - ciProfileData* bci_to_extra_data(int bci, ciMethod* m, bool& two_free_slots); - public: bool is_method_data() const { return true; } @@ -506,11 +475,9 @@ ciProfileData* next_data(ciProfileData* current); bool is_valid(ciProfileData* current) { return current != NULL; } - DataLayout* extra_data_base() const { return limit_data_position(); } - - // Get the data at an arbitrary bci, or NULL if there is none. If m - // is not NULL look for a SpeculativeTrapData if any first. - ciProfileData* bci_to_data(int bci, ciMethod* m = NULL); + // Get the data at an arbitrary bci, or NULL if there is none. + ciProfileData* bci_to_data(int bci); + ciProfileData* bci_to_extra_data(int bci, bool create_if_missing); uint overflow_trap_count() const { return _orig.overflow_trap_count(); @@ -529,13 +496,12 @@ // Helpful query functions that decode trap_state. int has_trap_at(ciProfileData* data, int reason); - int has_trap_at(int bci, ciMethod* m, int reason) { - assert((m != NULL) == Deoptimization::reason_is_speculate(reason), "inconsistent method/reason"); - return has_trap_at(bci_to_data(bci, m), reason); + int has_trap_at(int bci, int reason) { + return has_trap_at(bci_to_data(bci), reason); } int trap_recompiled_at(ciProfileData* data); - int trap_recompiled_at(int bci, ciMethod* m) { - return trap_recompiled_at(bci_to_data(bci, m)); + int trap_recompiled_at(int bci) { + return trap_recompiled_at(bci_to_data(bci)); } void clear_escape_info();