equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 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. |
3403 if (!is_uncommon ) { |
3403 if (!is_uncommon ) { |
3404 // Is it safe to skip? |
3404 // Is it safe to skip? |
3405 for (uint i = 0; i < in->outcnt(); i++) { |
3405 for (uint i = 0; i < in->outcnt(); i++) { |
3406 Node* u = in->raw_out(i); |
3406 Node* u = in->raw_out(i); |
3407 if (!u->is_SafePoint() || |
3407 if (!u->is_SafePoint() || |
3408 u->is_Call() && u->as_Call()->has_non_debug_use(n)) { |
3408 (u->is_Call() && u->as_Call()->has_non_debug_use(n))) { |
3409 safe_to_skip = false; |
3409 safe_to_skip = false; |
3410 } |
3410 } |
3411 } |
3411 } |
3412 } |
3412 } |
3413 if (safe_to_skip) { |
3413 if (safe_to_skip) { |
3835 case T_DOUBLE: return (_v._value.j == other._v._value.j); |
3835 case T_DOUBLE: return (_v._value.j == other._v._value.j); |
3836 case T_OBJECT: |
3836 case T_OBJECT: |
3837 case T_ADDRESS: return (_v._value.l == other._v._value.l); |
3837 case T_ADDRESS: return (_v._value.l == other._v._value.l); |
3838 case T_VOID: return (_v._value.l == other._v._value.l); // jump-table entries |
3838 case T_VOID: return (_v._value.l == other._v._value.l); // jump-table entries |
3839 case T_METADATA: return (_v._metadata == other._v._metadata); |
3839 case T_METADATA: return (_v._metadata == other._v._metadata); |
3840 default: ShouldNotReachHere(); |
3840 default: ShouldNotReachHere(); return false; |
3841 } |
3841 } |
3842 return false; |
|
3843 } |
3842 } |
3844 |
3843 |
3845 static int type_to_size_in_bytes(BasicType t) { |
3844 static int type_to_size_in_bytes(BasicType t) { |
3846 switch (t) { |
3845 switch (t) { |
3847 case T_INT: return sizeof(jint ); |
3846 case T_INT: return sizeof(jint ); |
3852 // We use T_VOID as marker for jump-table entries (labels) which |
3851 // We use T_VOID as marker for jump-table entries (labels) which |
3853 // need an internal word relocation. |
3852 // need an internal word relocation. |
3854 case T_VOID: |
3853 case T_VOID: |
3855 case T_ADDRESS: |
3854 case T_ADDRESS: |
3856 case T_OBJECT: return sizeof(jobject); |
3855 case T_OBJECT: return sizeof(jobject); |
3857 } |
3856 default: |
3858 |
3857 ShouldNotReachHere(); |
3859 ShouldNotReachHere(); |
3858 return -1; |
3860 return -1; |
3859 } |
3861 } |
3860 } |
3862 |
3861 |
3863 int Compile::ConstantTable::qsort_comparator(Constant* a, Constant* b) { |
3862 int Compile::ConstantTable::qsort_comparator(Constant* a, Constant* b) { |
3864 // sort descending |
3863 // sort descending |
3865 if (a->freq() > b->freq()) return -1; |
3864 if (a->freq() > b->freq()) return -1; |