equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2000, 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. |
777 case Bytecodes::_ifnonnull: |
777 case Bytecodes::_ifnonnull: |
778 return BranchData::static_cell_count(); |
778 return BranchData::static_cell_count(); |
779 case Bytecodes::_lookupswitch: |
779 case Bytecodes::_lookupswitch: |
780 case Bytecodes::_tableswitch: |
780 case Bytecodes::_tableswitch: |
781 return variable_cell_count; |
781 return variable_cell_count; |
782 } |
782 default: |
783 return no_profile_data; |
783 return no_profile_data; |
|
784 } |
784 } |
785 } |
785 |
786 |
786 // Compute the size of the profiling information corresponding to |
787 // Compute the size of the profiling information corresponding to |
787 // the current bytecode. |
788 // the current bytecode. |
788 int MethodData::compute_data_size(BytecodeStream* stream) { |
789 int MethodData::compute_data_size(BytecodeStream* stream) { |
1045 break; |
1046 break; |
1046 case Bytecodes::_lookupswitch: |
1047 case Bytecodes::_lookupswitch: |
1047 case Bytecodes::_tableswitch: |
1048 case Bytecodes::_tableswitch: |
1048 cell_count = MultiBranchData::compute_cell_count(stream); |
1049 cell_count = MultiBranchData::compute_cell_count(stream); |
1049 tag = DataLayout::multi_branch_data_tag; |
1050 tag = DataLayout::multi_branch_data_tag; |
|
1051 break; |
|
1052 default: |
1050 break; |
1053 break; |
1051 } |
1054 } |
1052 assert(tag == DataLayout::multi_branch_data_tag || |
1055 assert(tag == DataLayout::multi_branch_data_tag || |
1053 ((MethodData::profile_arguments() || MethodData::profile_return()) && |
1056 ((MethodData::profile_arguments() || MethodData::profile_return()) && |
1054 (tag == DataLayout::call_type_data_tag || |
1057 (tag == DataLayout::call_type_data_tag || |