Mercurial > hg > graal-jvmci-8
comparison src/share/vm/utilities/globalDefinitions.hpp @ 23614:32b682649973 jdk8u75-b04
8132051: Better byte behavior
Reviewed-by: coleenp, roland
author | kevinw |
---|---|
date | Fri, 15 Jan 2016 22:33:15 +0000 |
parents | b6a8cc1e0d92 |
children | b5f3a471e646 |
comparison
equal
deleted
inserted
replaced
23613:b374548dcb48 | 23614:32b682649973 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 1997, 2016, 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. |
794 // state when it comes to machine representation but is used separately for (oop) | 794 // state when it comes to machine representation but is used separately for (oop) |
795 // type specific operations (e.g. verification code). | 795 // type specific operations (e.g. verification code). |
796 | 796 |
797 enum TosState { // describes the tos cache contents | 797 enum TosState { // describes the tos cache contents |
798 btos = 0, // byte, bool tos cached | 798 btos = 0, // byte, bool tos cached |
799 ctos = 1, // char tos cached | 799 ztos = 1, // byte, bool tos cached |
800 stos = 2, // short tos cached | 800 ctos = 2, // char tos cached |
801 itos = 3, // int tos cached | 801 stos = 3, // short tos cached |
802 ltos = 4, // long tos cached | 802 itos = 4, // int tos cached |
803 ftos = 5, // float tos cached | 803 ltos = 5, // long tos cached |
804 dtos = 6, // double tos cached | 804 ftos = 6, // float tos cached |
805 atos = 7, // object cached | 805 dtos = 7, // double tos cached |
806 vtos = 8, // tos not cached | 806 atos = 8, // object cached |
807 vtos = 9, // tos not cached | |
807 number_of_states, | 808 number_of_states, |
808 ilgl // illegal state: should not occur | 809 ilgl // illegal state: should not occur |
809 }; | 810 }; |
810 | 811 |
811 | 812 |
812 inline TosState as_TosState(BasicType type) { | 813 inline TosState as_TosState(BasicType type) { |
813 switch (type) { | 814 switch (type) { |
814 case T_BYTE : return btos; | 815 case T_BYTE : return btos; |
815 case T_BOOLEAN: return btos; // FIXME: Add ztos | 816 case T_BOOLEAN: return ztos; |
816 case T_CHAR : return ctos; | 817 case T_CHAR : return ctos; |
817 case T_SHORT : return stos; | 818 case T_SHORT : return stos; |
818 case T_INT : return itos; | 819 case T_INT : return itos; |
819 case T_LONG : return ltos; | 820 case T_LONG : return ltos; |
820 case T_FLOAT : return ftos; | 821 case T_FLOAT : return ftos; |
826 return ilgl; | 827 return ilgl; |
827 } | 828 } |
828 | 829 |
829 inline BasicType as_BasicType(TosState state) { | 830 inline BasicType as_BasicType(TosState state) { |
830 switch (state) { | 831 switch (state) { |
831 //case ztos: return T_BOOLEAN;//FIXME | |
832 case btos : return T_BYTE; | 832 case btos : return T_BYTE; |
833 case ztos : return T_BOOLEAN; | |
833 case ctos : return T_CHAR; | 834 case ctos : return T_CHAR; |
834 case stos : return T_SHORT; | 835 case stos : return T_SHORT; |
835 case itos : return T_INT; | 836 case itos : return T_INT; |
836 case ltos : return T_LONG; | 837 case ltos : return T_LONG; |
837 case ftos : return T_FLOAT; | 838 case ftos : return T_FLOAT; |