Mercurial > hg > graal-jvmci-8
comparison src/share/vm/c1/c1_Compilation.cpp @ 1201:24128c2ffa87
6921339: backout 6917766
Reviewed-by: mr
author | twisti |
---|---|
date | Fri, 29 Jan 2010 08:33:24 -0800 |
parents | ba263cfb7611 |
children | 18a389214829 |
comparison
equal
deleted
inserted
replaced
1200:ba263cfb7611 | 1201:24128c2ffa87 |
---|---|
1 /* | 1 /* |
2 * Copyright 1999-2010 Sun Microsystems, Inc. All Rights Reserved. | 2 * Copyright 1999-2009 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. |
203 | 203 |
204 | 204 |
205 void Compilation::emit_code_epilog(LIR_Assembler* assembler) { | 205 void Compilation::emit_code_epilog(LIR_Assembler* assembler) { |
206 CHECK_BAILOUT(); | 206 CHECK_BAILOUT(); |
207 | 207 |
208 CodeOffsets* code_offsets = assembler->offsets(); | |
209 | |
210 // generate code or slow cases | 208 // generate code or slow cases |
211 assembler->emit_slow_case_stubs(); | 209 assembler->emit_slow_case_stubs(); |
212 CHECK_BAILOUT(); | 210 CHECK_BAILOUT(); |
213 | 211 |
214 // generate exception adapters | 212 // generate exception adapters |
215 assembler->emit_exception_entries(exception_info_list()); | 213 assembler->emit_exception_entries(exception_info_list()); |
216 CHECK_BAILOUT(); | 214 CHECK_BAILOUT(); |
217 | 215 |
218 // Generate code for exception handler. | 216 // generate code for exception handler |
219 code_offsets->set_value(CodeOffsets::Exceptions, assembler->emit_exception_handler()); | 217 assembler->emit_exception_handler(); |
220 CHECK_BAILOUT(); | 218 CHECK_BAILOUT(); |
221 | 219 assembler->emit_deopt_handler(); |
222 // Generate code for deopt handler. | |
223 code_offsets->set_value(CodeOffsets::Deopt, assembler->emit_deopt_handler()); | |
224 CHECK_BAILOUT(); | |
225 | |
226 // Generate code for MethodHandle deopt handler. We can use the | |
227 // same code as for the normal deopt handler, we just need a | |
228 // different entry point address. | |
229 code_offsets->set_value(CodeOffsets::DeoptMH, assembler->emit_deopt_handler()); | |
230 CHECK_BAILOUT(); | 220 CHECK_BAILOUT(); |
231 | 221 |
232 // done | 222 // done |
233 masm()->flush(); | 223 masm()->flush(); |
234 } | 224 } |