Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/parseHelper.cpp @ 14422:2b8e28fdf503
Merge
author | kvn |
---|---|
date | Tue, 05 Nov 2013 17:38:04 -0800 |
parents | b2ee5dc63353 |
children | 2113136690bc |
comparison
equal
deleted
inserted
replaced
14421:3068270ba476 | 14422:2b8e28fdf503 |
---|---|
126 } | 126 } |
127 return; | 127 return; |
128 } | 128 } |
129 | 129 |
130 // Push the bool result back on stack | 130 // Push the bool result back on stack |
131 Node* res = gen_instanceof(peek(), makecon(TypeKlassPtr::make(klass))); | 131 Node* res = gen_instanceof(peek(), makecon(TypeKlassPtr::make(klass)), true); |
132 | 132 |
133 // Pop from stack AFTER gen_instanceof because it can uncommon trap. | 133 // Pop from stack AFTER gen_instanceof because it can uncommon trap. |
134 pop(); | 134 pop(); |
135 push(res); | 135 push(res); |
136 } | 136 } |
341 void Parse::increment_and_test_invocation_counter(int limit) { | 341 void Parse::increment_and_test_invocation_counter(int limit) { |
342 if (!count_invocations()) return; | 342 if (!count_invocations()) return; |
343 | 343 |
344 // Get the Method* node. | 344 // Get the Method* node. |
345 ciMethod* m = method(); | 345 ciMethod* m = method(); |
346 address counters_adr = m->ensure_method_counters(); | 346 MethodCounters* counters_adr = m->ensure_method_counters(); |
347 if (counters_adr == NULL) { | |
348 C->record_failure("method counters allocation failed"); | |
349 return; | |
350 } | |
347 | 351 |
348 Node* ctrl = control(); | 352 Node* ctrl = control(); |
349 const TypePtr* adr_type = TypeRawPtr::make(counters_adr); | 353 const TypePtr* adr_type = TypeRawPtr::make((address) counters_adr); |
350 Node *counters_node = makecon(adr_type); | 354 Node *counters_node = makecon(adr_type); |
351 Node* adr_iic_node = basic_plus_adr(counters_node, counters_node, | 355 Node* adr_iic_node = basic_plus_adr(counters_node, counters_node, |
352 MethodCounters::interpreter_invocation_counter_offset_in_bytes()); | 356 MethodCounters::interpreter_invocation_counter_offset_in_bytes()); |
353 Node* cnt = make_load(ctrl, adr_iic_node, TypeInt::INT, T_INT, adr_type); | 357 Node* cnt = make_load(ctrl, adr_iic_node, TypeInt::INT, T_INT, adr_type); |
354 | 358 |