hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp
changeset 4761 bdb7375a1fee
parent 4430 95b539dfa1e8
child 4764 d15bb22d4d39
equal deleted inserted replaced
4744:40fc0ab5cd15 4761:bdb7375a1fee
     1 /*
     1 /*
     2  * Copyright 2000-2009 Sun Microsystems, Inc.  All Rights Reserved.
     2  * Copyright 2000-2010 Sun Microsystems, Inc.  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.
   440 
   440 
   441   compilation()->offsets()->set_value(CodeOffsets::Exceptions, code_offset());
   441   compilation()->offsets()->set_value(CodeOffsets::Exceptions, code_offset());
   442 
   442 
   443   // if the method does not have an exception handler, then there is
   443   // if the method does not have an exception handler, then there is
   444   // no reason to search for one
   444   // no reason to search for one
   445   if (compilation()->has_exception_handlers() || compilation()->env()->jvmti_can_post_exceptions()) {
   445   if (compilation()->has_exception_handlers() || compilation()->env()->jvmti_can_post_on_exceptions()) {
   446     // the exception oop and pc are in rax, and rdx
   446     // the exception oop and pc are in rax, and rdx
   447     // no other registers need to be preserved, so invalidate them
   447     // no other registers need to be preserved, so invalidate them
   448     __ invalidate_registers(false, true, true, false, true, true);
   448     __ invalidate_registers(false, true, true, false, true, true);
   449 
   449 
   450     // check that there is really an exception
   450     // check that there is really an exception