Mercurial > hg > graal-jvmci-8
diff src/share/vm/code/pcDesc.hpp @ 1253:f70b0d9ab095
6910618: C2: Error: assert(d->is_oop(),"JVM_ArrayCopy: dst not an oop")
Summary: Mark in PcDesc call sites which return oop and save the result oop across objects reallocation during deoptimization.
Reviewed-by: never
author | kvn |
---|---|
date | Tue, 09 Feb 2010 01:31:13 -0800 |
parents | e66fd840cb6b |
children | c18cbe5936b8 |
line wrap: on
line diff
--- a/src/share/vm/code/pcDesc.hpp Mon Feb 08 12:20:09 2010 -0800 +++ b/src/share/vm/code/pcDesc.hpp Tue Feb 09 01:31:13 2010 -0800 @@ -39,6 +39,7 @@ struct { unsigned int reexecute: 1; unsigned int is_method_handle_invoke: 1; + unsigned int return_oop: 1; } bits; bool operator ==(const PcDescFlags& other) { return word == other.word; } } _flags; @@ -76,6 +77,9 @@ bool is_method_handle_invoke() const { return _flags.bits.is_method_handle_invoke; } void set_is_method_handle_invoke(bool z) { _flags.bits.is_method_handle_invoke = z; } + bool return_oop() const { return _flags.bits.return_oop; } + void set_return_oop(bool z) { _flags.bits.return_oop = z; } + // Returns the real pc address real_pc(const nmethod* code) const;