equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1998, 2017, 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. |
53 #endif // AMD64 |
53 #endif // AMD64 |
54 void pass_object(); |
54 void pass_object(); |
55 |
55 |
56 public: |
56 public: |
57 // Creation |
57 // Creation |
58 SignatureHandlerGenerator(methodHandle method, CodeBuffer* buffer) : NativeSignatureIterator(method) { |
58 SignatureHandlerGenerator(const methodHandle& method, CodeBuffer* buffer) : NativeSignatureIterator(method) { |
59 _masm = new MacroAssembler(buffer); |
59 _masm = new MacroAssembler(buffer); |
60 #ifdef AMD64 |
60 #ifdef AMD64 |
61 #ifdef _WIN64 |
61 #ifdef _WIN64 |
62 _num_args = (method->is_static() ? 1 : 0); |
62 _num_args = (method->is_static() ? 1 : 0); |
63 _stack_offset = (Argument::n_int_register_parameters_c+1)* wordSize; // don't overwrite return address |
63 _stack_offset = (Argument::n_int_register_parameters_c+1)* wordSize; // don't overwrite return address |