hotspot/src/share/vm/opto/parse1.cpp
changeset 46630 75aa3e39d02c
parent 43963 6845bb645be5
equal deleted inserted replaced
46629:8eeacdc76bf2 46630:75aa3e39d02c
     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.
   655       }
   655       }
   656 
   656 
   657       NOT_PRODUCT(blocks_parsed++);
   657       NOT_PRODUCT(blocks_parsed++);
   658 
   658 
   659       progress = true;
   659       progress = true;
   660       if (block->is_loop_head() || block->is_handler() || has_irreducible && !block->is_ready()) {
   660       if (block->is_loop_head() || block->is_handler() || (has_irreducible && !block->is_ready())) {
   661         // Not all preds have been parsed.  We must build phis everywhere.
   661         // Not all preds have been parsed.  We must build phis everywhere.
   662         // (Note that dead locals do not get phis built, ever.)
   662         // (Note that dead locals do not get phis built, ever.)
   663         ensure_phis_everywhere();
   663         ensure_phis_everywhere();
   664 
   664 
   665         if (block->is_SEL_head()) {
   665         if (block->is_SEL_head()) {
   743   case T_CHAR:
   743   case T_CHAR:
   744     v = gvn->transform(new AndINode(v, gvn->intcon(0xFFFF)));
   744     v = gvn->transform(new AndINode(v, gvn->intcon(0xFFFF)));
   745     break;
   745     break;
   746   case T_BOOLEAN:
   746   case T_BOOLEAN:
   747     v = gvn->transform(new AndINode(v, gvn->intcon(0x1)));
   747     v = gvn->transform(new AndINode(v, gvn->intcon(0x1)));
       
   748     break;
       
   749   default:
   748     break;
   750     break;
   749   }
   751   }
   750   return v;
   752   return v;
   751 }
   753 }
   752 
   754