Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/templateInterpreter_x86_64.cpp @ 10506:7344fa3e8833
Fixed an interpreter issue concerning a trashed register.
author | Christian Haeubl <haeubl@ssw.jku.at> |
---|---|
date | Mon, 24 Jun 2013 11:43:48 +0200 |
parents | 40b8c383bc31 |
children | ce09ad599709 |
comparison
equal
deleted
inserted
replaced
10490:dcbdf71c4507 | 10506:7344fa3e8833 |
---|---|
373 if (CompilationPolicyChoice == 4) { | 373 if (CompilationPolicyChoice == 4) { |
374 Label not_zero; | 374 Label not_zero; |
375 __ testl(rcx, InvocationCounter::count_mask_value); | 375 __ testl(rcx, InvocationCounter::count_mask_value); |
376 __ jcc(Assembler::notZero, not_zero); | 376 __ jcc(Assembler::notZero, not_zero); |
377 | 377 |
378 __ push(rax); | |
378 __ push(rcx); | 379 __ push(rcx); |
379 __ call_VM(noreg, CAST_FROM_FN_PTR(address, graal_initialize_time), rdx, false); | 380 __ call_VM(noreg, CAST_FROM_FN_PTR(address, graal_initialize_time), rdx, false); |
380 __ set_method_data_pointer_for_bcp(); | 381 __ set_method_data_pointer_for_bcp(); |
381 __ get_method(rbx); | 382 __ get_method(rbx); |
382 __ pop(rcx); | 383 __ pop(rcx); |
384 __ pop(rax); | |
383 | 385 |
384 __ testl(rcx, InvocationCounter::count_mask_value); | 386 __ testl(rcx, InvocationCounter::count_mask_value); |
385 __ jcc(Assembler::zero, not_zero); | 387 __ jcc(Assembler::zero, not_zero); |
386 __ stop("unexpected counter value in rcx"); | 388 __ stop("unexpected counter value in rcx"); |
387 | 389 |