< prev index next >

src/hotspot/share/adlc/formssel.cpp

Print this page

3925   uint position = position0;
3926 
3927   return (MatchNode::base_operand( position, globals, result, name, opType));
3928 }
3929 
3930 
3931 bool MatchRule::is_base_register(FormDict &globals) const {
3932   uint   position = 1;
3933   const char  *result   = NULL;
3934   const char  *name     = NULL;
3935   const char  *opType   = NULL;
3936   if (!base_operand(position, globals, result, name, opType)) {
3937     position = 0;
3938     if( base_operand(position, globals, result, name, opType) &&
3939         (strcmp(opType,"RegI")==0 ||
3940          strcmp(opType,"RegP")==0 ||
3941          strcmp(opType,"RegN")==0 ||
3942          strcmp(opType,"RegL")==0 ||
3943          strcmp(opType,"RegF")==0 ||
3944          strcmp(opType,"RegD")==0 ||


3945          strcmp(opType,"VecS")==0 ||
3946          strcmp(opType,"VecD")==0 ||
3947          strcmp(opType,"VecX")==0 ||
3948          strcmp(opType,"VecY")==0 ||
3949          strcmp(opType,"VecZ")==0 ||
3950          strcmp(opType,"Reg" )==0) ) {
3951       return 1;
3952     }
3953   }
3954   return 0;
3955 }
3956 
3957 Form::DataType MatchRule::is_base_constant(FormDict &globals) const {
3958   uint         position = 1;
3959   const char  *result   = NULL;
3960   const char  *name     = NULL;
3961   const char  *opType   = NULL;
3962   if (!base_operand(position, globals, result, name, opType)) {
3963     position = 0;
3964     if (base_operand(position, globals, result, name, opType)) {

3925   uint position = position0;
3926 
3927   return (MatchNode::base_operand( position, globals, result, name, opType));
3928 }
3929 
3930 
3931 bool MatchRule::is_base_register(FormDict &globals) const {
3932   uint   position = 1;
3933   const char  *result   = NULL;
3934   const char  *name     = NULL;
3935   const char  *opType   = NULL;
3936   if (!base_operand(position, globals, result, name, opType)) {
3937     position = 0;
3938     if( base_operand(position, globals, result, name, opType) &&
3939         (strcmp(opType,"RegI")==0 ||
3940          strcmp(opType,"RegP")==0 ||
3941          strcmp(opType,"RegN")==0 ||
3942          strcmp(opType,"RegL")==0 ||
3943          strcmp(opType,"RegF")==0 ||
3944          strcmp(opType,"RegD")==0 ||
3945          strcmp(opType,"RegVMask")==0 ||
3946          strcmp(opType,"VecA")==0 ||
3947          strcmp(opType,"VecS")==0 ||
3948          strcmp(opType,"VecD")==0 ||
3949          strcmp(opType,"VecX")==0 ||
3950          strcmp(opType,"VecY")==0 ||
3951          strcmp(opType,"VecZ")==0 ||
3952          strcmp(opType,"Reg" )==0) ) {
3953       return 1;
3954     }
3955   }
3956   return 0;
3957 }
3958 
3959 Form::DataType MatchRule::is_base_constant(FormDict &globals) const {
3960   uint         position = 1;
3961   const char  *result   = NULL;
3962   const char  *name     = NULL;
3963   const char  *opType   = NULL;
3964   if (!base_operand(position, globals, result, name, opType)) {
3965     position = 0;
3966     if (base_operand(position, globals, result, name, opType)) {
< prev index next >