Mercurial > hg > truffle
comparison src/share/vm/opto/type.cpp @ 624:337400e7a5dd
6797305: Add LoadUB and LoadUI opcode class
Summary: Add a LoadUB (unsigned byte) and LoadUI (unsigned int) opcode class so we have these load optimizations in the first place and do not need to handle them in the matcher.
Reviewed-by: never, kvn
author | twisti |
---|---|
date | Mon, 09 Mar 2009 03:17:11 -0700 |
parents | 98cb887364d3 |
children | 7bb995fbd3c0 |
comparison
equal
deleted
inserted
replaced
623:9adddb8c0fc8 | 624:337400e7a5dd |
---|---|
1 /* | 1 /* |
2 * Copyright 1997-2008 Sun Microsystems, Inc. All Rights Reserved. | 2 * Copyright 1997-2009 Sun Microsystems, Inc. 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. |
224 TypeInt::CC_GT = TypeInt::make( 1, 1, WidenMin); // == TypeInt::ONE | 224 TypeInt::CC_GT = TypeInt::make( 1, 1, WidenMin); // == TypeInt::ONE |
225 TypeInt::CC_EQ = TypeInt::make( 0, 0, WidenMin); // == TypeInt::ZERO | 225 TypeInt::CC_EQ = TypeInt::make( 0, 0, WidenMin); // == TypeInt::ZERO |
226 TypeInt::CC_LE = TypeInt::make(-1, 0, WidenMin); | 226 TypeInt::CC_LE = TypeInt::make(-1, 0, WidenMin); |
227 TypeInt::CC_GE = TypeInt::make( 0, 1, WidenMin); // == TypeInt::BOOL | 227 TypeInt::CC_GE = TypeInt::make( 0, 1, WidenMin); // == TypeInt::BOOL |
228 TypeInt::BYTE = TypeInt::make(-128,127, WidenMin); // Bytes | 228 TypeInt::BYTE = TypeInt::make(-128,127, WidenMin); // Bytes |
229 TypeInt::UBYTE = TypeInt::make(0, 255, WidenMin); // Unsigned Bytes | |
229 TypeInt::CHAR = TypeInt::make(0,65535, WidenMin); // Java chars | 230 TypeInt::CHAR = TypeInt::make(0,65535, WidenMin); // Java chars |
230 TypeInt::SHORT = TypeInt::make(-32768,32767, WidenMin); // Java shorts | 231 TypeInt::SHORT = TypeInt::make(-32768,32767, WidenMin); // Java shorts |
231 TypeInt::POS = TypeInt::make(0,max_jint, WidenMin); // Non-neg values | 232 TypeInt::POS = TypeInt::make(0,max_jint, WidenMin); // Non-neg values |
232 TypeInt::POS1 = TypeInt::make(1,max_jint, WidenMin); // Positive values | 233 TypeInt::POS1 = TypeInt::make(1,max_jint, WidenMin); // Positive values |
233 TypeInt::INT = TypeInt::make(min_jint,max_jint, WidenMax); // 32-bit integers | 234 TypeInt::INT = TypeInt::make(min_jint,max_jint, WidenMax); // 32-bit integers |
1020 const TypeInt *TypeInt::CC_GT; // [1] == ONE | 1021 const TypeInt *TypeInt::CC_GT; // [1] == ONE |
1021 const TypeInt *TypeInt::CC_EQ; // [0] == ZERO | 1022 const TypeInt *TypeInt::CC_EQ; // [0] == ZERO |
1022 const TypeInt *TypeInt::CC_LE; // [-1,0] | 1023 const TypeInt *TypeInt::CC_LE; // [-1,0] |
1023 const TypeInt *TypeInt::CC_GE; // [0,1] == BOOL (!) | 1024 const TypeInt *TypeInt::CC_GE; // [0,1] == BOOL (!) |
1024 const TypeInt *TypeInt::BYTE; // Bytes, -128 to 127 | 1025 const TypeInt *TypeInt::BYTE; // Bytes, -128 to 127 |
1026 const TypeInt *TypeInt::UBYTE; // Unsigned Bytes, 0 to 255 | |
1025 const TypeInt *TypeInt::CHAR; // Java chars, 0-65535 | 1027 const TypeInt *TypeInt::CHAR; // Java chars, 0-65535 |
1026 const TypeInt *TypeInt::SHORT; // Java shorts, -32768-32767 | 1028 const TypeInt *TypeInt::SHORT; // Java shorts, -32768-32767 |
1027 const TypeInt *TypeInt::POS; // Positive 32-bit integers or zero | 1029 const TypeInt *TypeInt::POS; // Positive 32-bit integers or zero |
1028 const TypeInt *TypeInt::POS1; // Positive 32-bit integers | 1030 const TypeInt *TypeInt::POS1; // Positive 32-bit integers |
1029 const TypeInt *TypeInt::INT; // 32-bit integers | 1031 const TypeInt *TypeInt::INT; // 32-bit integers |