989 strcmp(call->as_CallLeaf()->_name, "aescrypt_encryptBlock") == 0 || 990 strcmp(call->as_CallLeaf()->_name, "aescrypt_decryptBlock") == 0 || 991 strcmp(call->as_CallLeaf()->_name, "cipherBlockChaining_encryptAESCrypt") == 0 || 992 strcmp(call->as_CallLeaf()->_name, "cipherBlockChaining_decryptAESCrypt") == 0 || 993 strcmp(call->as_CallLeaf()->_name, "electronicCodeBook_encryptAESCrypt") == 0 || 994 strcmp(call->as_CallLeaf()->_name, "electronicCodeBook_decryptAESCrypt") == 0 || 995 strcmp(call->as_CallLeaf()->_name, "counterMode_AESCrypt") == 0 || 996 strcmp(call->as_CallLeaf()->_name, "ghash_processBlocks") == 0 || 997 strcmp(call->as_CallLeaf()->_name, "encodeBlock") == 0 || 998 strcmp(call->as_CallLeaf()->_name, "sha1_implCompress") == 0 || 999 strcmp(call->as_CallLeaf()->_name, "sha1_implCompressMB") == 0 || 1000 strcmp(call->as_CallLeaf()->_name, "sha256_implCompress") == 0 || 1001 strcmp(call->as_CallLeaf()->_name, "sha256_implCompressMB") == 0 || 1002 strcmp(call->as_CallLeaf()->_name, "sha512_implCompress") == 0 || 1003 strcmp(call->as_CallLeaf()->_name, "sha512_implCompressMB") == 0 || 1004 strcmp(call->as_CallLeaf()->_name, "multiplyToLen") == 0 || 1005 strcmp(call->as_CallLeaf()->_name, "squareToLen") == 0 || 1006 strcmp(call->as_CallLeaf()->_name, "mulAdd") == 0 || 1007 strcmp(call->as_CallLeaf()->_name, "montgomery_multiply") == 0 || 1008 strcmp(call->as_CallLeaf()->_name, "montgomery_square") == 0 || 1009 strcmp(call->as_CallLeaf()->_name, "vectorizedMismatch") == 0) 1010 ))) { 1011 call->dump(); 1012 fatal("EA unexpected CallLeaf %s", call->as_CallLeaf()->_name); 1013 } 1014 #endif 1015 // Always process arraycopy's destination object since 1016 // we need to add all possible edges to references in 1017 // source object. 1018 if (arg_esc >= PointsToNode::ArgEscape && 1019 !arg_is_arraycopy_dest) { 1020 continue; 1021 } 1022 PointsToNode::EscapeState es = PointsToNode::ArgEscape; 1023 if (call->is_ArrayCopy()) { 1024 ArrayCopyNode* ac = call->as_ArrayCopy(); 1025 if (ac->is_clonebasic() || 1026 ac->is_arraycopy_validated() || 1027 ac->is_copyof_validated() || 1028 ac->is_copyofrange_validated()) { | 989 strcmp(call->as_CallLeaf()->_name, "aescrypt_encryptBlock") == 0 || 990 strcmp(call->as_CallLeaf()->_name, "aescrypt_decryptBlock") == 0 || 991 strcmp(call->as_CallLeaf()->_name, "cipherBlockChaining_encryptAESCrypt") == 0 || 992 strcmp(call->as_CallLeaf()->_name, "cipherBlockChaining_decryptAESCrypt") == 0 || 993 strcmp(call->as_CallLeaf()->_name, "electronicCodeBook_encryptAESCrypt") == 0 || 994 strcmp(call->as_CallLeaf()->_name, "electronicCodeBook_decryptAESCrypt") == 0 || 995 strcmp(call->as_CallLeaf()->_name, "counterMode_AESCrypt") == 0 || 996 strcmp(call->as_CallLeaf()->_name, "ghash_processBlocks") == 0 || 997 strcmp(call->as_CallLeaf()->_name, "encodeBlock") == 0 || 998 strcmp(call->as_CallLeaf()->_name, "sha1_implCompress") == 0 || 999 strcmp(call->as_CallLeaf()->_name, "sha1_implCompressMB") == 0 || 1000 strcmp(call->as_CallLeaf()->_name, "sha256_implCompress") == 0 || 1001 strcmp(call->as_CallLeaf()->_name, "sha256_implCompressMB") == 0 || 1002 strcmp(call->as_CallLeaf()->_name, "sha512_implCompress") == 0 || 1003 strcmp(call->as_CallLeaf()->_name, "sha512_implCompressMB") == 0 || 1004 strcmp(call->as_CallLeaf()->_name, "multiplyToLen") == 0 || 1005 strcmp(call->as_CallLeaf()->_name, "squareToLen") == 0 || 1006 strcmp(call->as_CallLeaf()->_name, "mulAdd") == 0 || 1007 strcmp(call->as_CallLeaf()->_name, "montgomery_multiply") == 0 || 1008 strcmp(call->as_CallLeaf()->_name, "montgomery_square") == 0 || 1009 strcmp(call->as_CallLeaf()->_name, "bigIntegerRightShiftWorker") == 0 || 1010 strcmp(call->as_CallLeaf()->_name, "bigIntegerLeftShiftWorker") == 0 || 1011 strcmp(call->as_CallLeaf()->_name, "vectorizedMismatch") == 0) 1012 ))) { 1013 call->dump(); 1014 fatal("EA unexpected CallLeaf %s", call->as_CallLeaf()->_name); 1015 } 1016 #endif 1017 // Always process arraycopy's destination object since 1018 // we need to add all possible edges to references in 1019 // source object. 1020 if (arg_esc >= PointsToNode::ArgEscape && 1021 !arg_is_arraycopy_dest) { 1022 continue; 1023 } 1024 PointsToNode::EscapeState es = PointsToNode::ArgEscape; 1025 if (call->is_ArrayCopy()) { 1026 ArrayCopyNode* ac = call->as_ArrayCopy(); 1027 if (ac->is_clonebasic() || 1028 ac->is_arraycopy_validated() || 1029 ac->is_copyof_validated() || 1030 ac->is_copyofrange_validated()) { |