comparison src/share/vm/prims/methodComparator.cpp @ 13052:3cb736f232c7

8185301: [MVT] Add JVM support for -Dvalhalla.mangleClassInfo Summary: Introduction of JVM_CONSTANT_Value to support MVT's name mangling specification for value types Reviewed-by: acorn, dsimms
author lfoltan
date Tue, 25 Jul 2017 16:57:58 -0400
parents 0e3de00effac
children bc075a2f87ad
comparison
equal deleted inserted replaced
16:2a863d9695e7 17:aa3b7baa0e52
1 /* 1 /*
2 * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2000, 2017, 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.
276 if (strcmp(_old_cp->string_at_noresolve(cpi_old), 276 if (strcmp(_old_cp->string_at_noresolve(cpi_old),
277 _new_cp->string_at_noresolve(cpi_new)) != 0) 277 _new_cp->string_at_noresolve(cpi_new)) != 0)
278 return false; 278 return false;
279 if (_old_cp->is_pseudo_string_at(cpi_old) || _new_cp->is_pseudo_string_at(cpi_new)) 279 if (_old_cp->is_pseudo_string_at(cpi_old) || _new_cp->is_pseudo_string_at(cpi_new))
280 return (_old_cp->is_pseudo_string_at(cpi_old) == _new_cp->is_pseudo_string_at(cpi_new)); 280 return (_old_cp->is_pseudo_string_at(cpi_old) == _new_cp->is_pseudo_string_at(cpi_new));
281 } else if (tag_old.is_klass() || tag_old.is_unresolved_klass()) { 281 } else if (tag_old.is_klass() || tag_old.is_unresolved_klass() ||
282 tag_old.is_value_type() || tag_old.is_unresolved_value_type()) {
282 // tag_old should be klass - 4881222 283 // tag_old should be klass - 4881222
283 if (! (tag_new.is_unresolved_klass() || tag_new.is_klass())) 284 if (! (tag_new.is_unresolved_klass() || tag_new.is_klass() ||
285 tag_new.is_unresolved_value_type() || tag_new.is_value_type()))
284 return false; 286 return false;
285 if (_old_cp->klass_at_noresolve(cpi_old) != 287 if (_old_cp->klass_at_noresolve(cpi_old) !=
286 _new_cp->klass_at_noresolve(cpi_new)) 288 _new_cp->klass_at_noresolve(cpi_new))
287 return false; 289 return false;
288 } else if (tag_old.is_method_type() && tag_new.is_method_type()) { 290 } else if (tag_old.is_method_type() && tag_new.is_method_type()) {