equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1999, 2010, 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. |
147 PUNWIND_INFO_EH_ONLY punwind; |
147 PUNWIND_INFO_EH_ONLY punwind; |
148 |
148 |
149 // If we are using Vectored Exceptions we don't need this registration |
149 // If we are using Vectored Exceptions we don't need this registration |
150 if (UseVectoredExceptions) return true; |
150 if (UseVectoredExceptions) return true; |
151 |
151 |
152 BufferBlob* b = BufferBlob::create("CodeCache Exception Handler", sizeof (DynamicCodeData)); |
152 BufferBlob* blob = BufferBlob::create("CodeCache Exception Handler", sizeof(DynamicCodeData)); |
153 CodeBuffer cb(b->instructions_begin(), b->instructions_size()); |
153 CodeBuffer cb(blob); |
154 MacroAssembler* masm = new MacroAssembler(&cb); |
154 MacroAssembler* masm = new MacroAssembler(&cb); |
155 pDCD = (pDynamicCodeData) masm->pc(); |
155 pDCD = (pDynamicCodeData) masm->pc(); |
156 |
156 |
157 masm->jump(ExternalAddress((address)&HandleExceptionFromCodeCache)); |
157 masm->jump(ExternalAddress((address)&HandleExceptionFromCodeCache)); |
158 masm->flush(); |
158 masm->flush(); |