< prev index next >

src/hotspot/cpu/s390/vm_version_s390.cpp

Print this page

        

*** 251,295 **** } } void VM_Version::set_features_string() { ! unsigned int ambiguity = 0; _model_string = z_name[0]; if (is_z13()) { ! _features_string = "System z G7-z13 (LDISP_fast, ExtImm, PCrel Load/Store, CmpB, Cond Load/Store, Interlocked Update, TxM, VectorInstr)"; _model_string = z_name[7]; ambiguity++; } if (is_ec12()) { ! _features_string = "System z G6-EC12 (LDISP_fast, ExtImm, PCrel Load/Store, CmpB, Cond Load/Store, Interlocked Update, TxM)"; _model_string = z_name[6]; ambiguity++; } if (is_z196()) { ! _features_string = "System z G5-z196 (LDISP_fast, ExtImm, PCrel Load/Store, CmpB, Cond Load/Store, Interlocked Update)"; _model_string = z_name[5]; ambiguity++; } if (is_z10()) { ! _features_string = "System z G4-z10 (LDISP_fast, ExtImm, PCrel Load/Store, CmpB)"; _model_string = z_name[4]; ambiguity++; } if (is_z9()) { ! _features_string = "System z G3-z9 (LDISP_fast, ExtImm), out-of-support as of 2016-04-01"; _model_string = z_name[3]; ambiguity++; } if (is_z990()) { ! _features_string = "System z G2-z990 (LDISP_fast), out-of-support as of 2014-07-01"; _model_string = z_name[2]; ambiguity++; } if (is_z900()) { ! _features_string = "System z G1-z900 (LDISP), out-of-support as of 2014-07-01"; _model_string = z_name[1]; ambiguity++; } if (ambiguity == 0) { --- 251,302 ---- } } void VM_Version::set_features_string() { ! // A note on the _features_string format: ! // There are jtreg tests checking the _features_string for various properties. ! // For some strange reason, these tests require the string to contain ! // only _lowercase_ characters. Keep that in mind when being surprised ! // about the unusual notation of features - and when adding new ones. ! // Features may have one comma at the end. ! // Furthermore, use one, and only one, separator space between features. ! // Multiple spaces are considered separate tokens, messing up everything. unsigned int ambiguity = 0; _model_string = z_name[0]; if (is_z13()) { ! _features_string = "system-z, g7-z13, ldisp_fast, extimm, pcrel_load/store, cmpb, cond_load/store, interlocked_update, txm, vectorinstr"; _model_string = z_name[7]; ambiguity++; } if (is_ec12()) { ! _features_string = "system-z, g6-ec12, ldisp_fast, extimm, pcrel_load/store, cmpb, cond_load/store, interlocked_update, txm"; _model_string = z_name[6]; ambiguity++; } if (is_z196()) { ! _features_string = "system-z, g5-z196, ldisp_fast, extimm, pcrel_load/store, cmpb, cond_load/store, interlocked_update"; _model_string = z_name[5]; ambiguity++; } if (is_z10()) { ! _features_string = "system-z, g4-z10, ldisp_fast, extimm, pcrel_load/store, cmpb"; _model_string = z_name[4]; ambiguity++; } if (is_z9()) { ! _features_string = "system-z, g3-z9, ldisp_fast, extimm, out-of-support as of 2016-04-01"; _model_string = z_name[3]; ambiguity++; } if (is_z990()) { ! _features_string = "system-z, g2-z990, ldisp_fast, out-of-support as of 2014-07-01"; _model_string = z_name[2]; ambiguity++; } if (is_z900()) { ! _features_string = "system-z, g1-z900, ldisp, out-of-support as of 2014-07-01"; _model_string = z_name[1]; ambiguity++; } if (ambiguity == 0) {
*** 300,328 **** _features_string = "z/Architecture (ambiguous detection)"; } if (has_Crypto_AES()) { char buf[256]; ! assert(strlen(_features_string) + 4 + 3*4 + 1 < sizeof(buf), "increase buffer size"); ! jio_snprintf(buf, sizeof(buf), "%s aes%s%s%s", // String 'aes' must be surrounded by spaces so that jtreg tests recognize it. _features_string, ! has_Crypto_AES128() ? " 128" : "", ! has_Crypto_AES192() ? " 192" : "", ! has_Crypto_AES256() ? " 256" : ""); _features_string = os::strdup(buf); } if (has_Crypto_SHA()) { char buf[256]; ! assert(strlen(_features_string) + 4 + 2 + 2*4 + 6 + 1 < sizeof(buf), "increase buffer size"); ! // String 'sha1' etc must be surrounded by spaces so that jtreg tests recognize it. ! jio_snprintf(buf, sizeof(buf), "%s %s%s%s%s", _features_string, ! has_Crypto_SHA1() ? " sha1" : "", ! has_Crypto_SHA256() ? " sha256" : "", ! has_Crypto_SHA512() ? " sha512" : "", ! has_Crypto_GHASH() ? " ghash" : ""); if (has_Crypto_AES()) { os::free((void *)_features_string); } _features_string = os::strdup(buf); } } --- 307,334 ---- _features_string = "z/Architecture (ambiguous detection)"; } if (has_Crypto_AES()) { char buf[256]; ! assert(strlen(_features_string) + 3*8 < sizeof(buf), "increase buffer size"); ! jio_snprintf(buf, sizeof(buf), "%s%s%s%s", _features_string, ! has_Crypto_AES128() ? ", aes128" : "", ! has_Crypto_AES192() ? ", aes192" : "", ! has_Crypto_AES256() ? ", aes256" : ""); _features_string = os::strdup(buf); } if (has_Crypto_SHA()) { char buf[256]; ! assert(strlen(_features_string) + 6 + 2*8 + 7 < sizeof(buf), "increase buffer size"); ! jio_snprintf(buf, sizeof(buf), "%s%s%s%s%s", _features_string, ! has_Crypto_SHA1() ? ", sha1" : "", ! has_Crypto_SHA256() ? ", sha256" : "", ! has_Crypto_SHA512() ? ", sha512" : "", ! has_Crypto_GHASH() ? ", ghash" : ""); if (has_Crypto_AES()) { os::free((void *)_features_string); } _features_string = os::strdup(buf); } }
< prev index next >