1 /* |
1 /* |
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2013, 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. |
109 StackValue* value = locs->at(index); |
109 StackValue* value = locs->at(index); |
110 switch(value->type()) { |
110 switch(value->type()) { |
111 case T_OBJECT: |
111 case T_OBJECT: |
112 assert(!value->obj_is_scalar_replaced(), "object should be reallocated already"); |
112 assert(!value->obj_is_scalar_replaced(), "object should be reallocated already"); |
113 // preserve object type |
113 // preserve object type |
114 _locals->add( new StackValue((intptr_t) (value->get_obj()()), T_OBJECT )); |
114 _locals->add( new StackValue(cast_from_oop<intptr_t>((value->get_obj()())), T_OBJECT )); |
115 break; |
115 break; |
116 case T_CONFLICT: |
116 case T_CONFLICT: |
117 // A dead local. Will be initialized to null/zero. |
117 // A dead local. Will be initialized to null/zero. |
118 _locals->add( new StackValue()); |
118 _locals->add( new StackValue()); |
119 break; |
119 break; |
134 StackValue* value = exprs->at(index); |
134 StackValue* value = exprs->at(index); |
135 switch(value->type()) { |
135 switch(value->type()) { |
136 case T_OBJECT: |
136 case T_OBJECT: |
137 assert(!value->obj_is_scalar_replaced(), "object should be reallocated already"); |
137 assert(!value->obj_is_scalar_replaced(), "object should be reallocated already"); |
138 // preserve object type |
138 // preserve object type |
139 _expressions->add( new StackValue((intptr_t) (value->get_obj()()), T_OBJECT )); |
139 _expressions->add( new StackValue(cast_from_oop<intptr_t>((value->get_obj()())), T_OBJECT )); |
140 break; |
140 break; |
141 case T_CONFLICT: |
141 case T_CONFLICT: |
142 // A dead stack element. Will be initialized to null/zero. |
142 // A dead stack element. Will be initialized to null/zero. |
143 // This can occur when the compiler emits a state in which stack |
143 // This can occur when the compiler emits a state in which stack |
144 // elements are known to be dead (because of an imminent exception). |
144 // elements are known to be dead (because of an imminent exception). |