@@ -497,7 +497,7 @@ void reg_mask_init() {
497497
498498  // _ALL_REG_mask is generated by adlc from the all_reg register class below.
499499  // We derive a number of subsets from it.
500-   _ANY_REG_mask =  _ALL_REG_mask;
500+   _ANY_REG_mask.assignFrom( _ALL_REG_mask) ;
501501
502502  if (PreserveFramePointer) {
503503    _ANY_REG_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()));
@@ -508,7 +508,7 @@ void reg_mask_init() {
508508    _ANY_REG_mask.remove(OptoReg::as_OptoReg(r12->as_VMReg()->next()));
509509  }
510510
511-   _PTR_REG_mask =  _ANY_REG_mask;
511+   _PTR_REG_mask.assignFrom( _ANY_REG_mask) ;
512512  _PTR_REG_mask.remove(OptoReg::as_OptoReg(rsp->as_VMReg()));
513513  _PTR_REG_mask.remove(OptoReg::as_OptoReg(rsp->as_VMReg()->next()));
514514  _PTR_REG_mask.remove(OptoReg::as_OptoReg(r15->as_VMReg()));
@@ -520,43 +520,43 @@ void reg_mask_init() {
520520    }
521521  }
522522
523-   _STACK_OR_PTR_REG_mask =  _PTR_REG_mask;
523+   _STACK_OR_PTR_REG_mask.assignFrom( _PTR_REG_mask) ;
524524  _STACK_OR_PTR_REG_mask.or_with(STACK_OR_STACK_SLOTS_mask());
525525
526-   _PTR_REG_NO_RBP_mask =  _PTR_REG_mask;
526+   _PTR_REG_NO_RBP_mask.assignFrom( _PTR_REG_mask) ;
527527  _PTR_REG_NO_RBP_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()));
528528  _PTR_REG_NO_RBP_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()->next()));
529529
530-   _PTR_NO_RAX_REG_mask =  _PTR_REG_mask;
530+   _PTR_NO_RAX_REG_mask.assignFrom( _PTR_REG_mask) ;
531531  _PTR_NO_RAX_REG_mask.remove(OptoReg::as_OptoReg(rax->as_VMReg()));
532532  _PTR_NO_RAX_REG_mask.remove(OptoReg::as_OptoReg(rax->as_VMReg()->next()));
533533
534-   _PTR_NO_RAX_RBX_REG_mask =  _PTR_NO_RAX_REG_mask;
534+   _PTR_NO_RAX_RBX_REG_mask.assignFrom( _PTR_NO_RAX_REG_mask) ;
535535  _PTR_NO_RAX_RBX_REG_mask.remove(OptoReg::as_OptoReg(rbx->as_VMReg()));
536536  _PTR_NO_RAX_RBX_REG_mask.remove(OptoReg::as_OptoReg(rbx->as_VMReg()->next()));
537537
538538
539-   _LONG_REG_mask =  _PTR_REG_mask;
540-   _STACK_OR_LONG_REG_mask =  _LONG_REG_mask;
539+   _LONG_REG_mask.assignFrom( _PTR_REG_mask) ;
540+   _STACK_OR_LONG_REG_mask.assignFrom( _LONG_REG_mask) ;
541541  _STACK_OR_LONG_REG_mask.or_with(STACK_OR_STACK_SLOTS_mask());
542542
543-   _LONG_NO_RAX_RDX_REG_mask =  _LONG_REG_mask;
543+   _LONG_NO_RAX_RDX_REG_mask.assignFrom( _LONG_REG_mask) ;
544544  _LONG_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rax->as_VMReg()));
545545  _LONG_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rax->as_VMReg()->next()));
546546  _LONG_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rdx->as_VMReg()));
547547  _LONG_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rdx->as_VMReg()->next()));
548548
549-   _LONG_NO_RCX_REG_mask =  _LONG_REG_mask;
549+   _LONG_NO_RCX_REG_mask.assignFrom( _LONG_REG_mask) ;
550550  _LONG_NO_RCX_REG_mask.remove(OptoReg::as_OptoReg(rcx->as_VMReg()));
551551  _LONG_NO_RCX_REG_mask.remove(OptoReg::as_OptoReg(rcx->as_VMReg()->next()));
552552
553-   _LONG_NO_RBP_R13_REG_mask =  _LONG_REG_mask;
553+   _LONG_NO_RBP_R13_REG_mask.assignFrom( _LONG_REG_mask) ;
554554  _LONG_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()));
555555  _LONG_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()->next()));
556556  _LONG_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(r13->as_VMReg()));
557557  _LONG_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(r13->as_VMReg()->next()));
558558
559-   _INT_REG_mask =  _ALL_INT_REG_mask;
559+   _INT_REG_mask.assignFrom( _ALL_INT_REG_mask) ;
560560  if (!UseAPX) {
561561    for (uint i = 0; i < sizeof(egprs)/sizeof(Register); i++) {
562562      _INT_REG_mask.remove(OptoReg::as_OptoReg(egprs[i]->as_VMReg()));
@@ -570,23 +570,23 @@ void reg_mask_init() {
570570    _INT_REG_mask.remove(OptoReg::as_OptoReg(r12->as_VMReg()));
571571  }
572572
573-   _STACK_OR_INT_REG_mask =  _INT_REG_mask;
573+   _STACK_OR_INT_REG_mask.assignFrom( _INT_REG_mask) ;
574574  _STACK_OR_INT_REG_mask.or_with(STACK_OR_STACK_SLOTS_mask());
575575
576-   _INT_NO_RAX_RDX_REG_mask =  _INT_REG_mask;
576+   _INT_NO_RAX_RDX_REG_mask.assignFrom( _INT_REG_mask) ;
577577  _INT_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rax->as_VMReg()));
578578  _INT_NO_RAX_RDX_REG_mask.remove(OptoReg::as_OptoReg(rdx->as_VMReg()));
579579
580-   _INT_NO_RCX_REG_mask =  _INT_REG_mask;
580+   _INT_NO_RCX_REG_mask.assignFrom( _INT_REG_mask) ;
581581  _INT_NO_RCX_REG_mask.remove(OptoReg::as_OptoReg(rcx->as_VMReg()));
582582
583-   _INT_NO_RBP_R13_REG_mask =  _INT_REG_mask;
583+   _INT_NO_RBP_R13_REG_mask.assignFrom( _INT_REG_mask) ;
584584  _INT_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(rbp->as_VMReg()));
585585  _INT_NO_RBP_R13_REG_mask.remove(OptoReg::as_OptoReg(r13->as_VMReg()));
586586
587587  // _FLOAT_REG_LEGACY_mask/_FLOAT_REG_EVEX_mask is generated by adlc
588588  // from the float_reg_legacy/float_reg_evex register class.
589-   _FLOAT_REG_mask =  VM_Version::supports_evex() ? _FLOAT_REG_EVEX_mask : _FLOAT_REG_LEGACY_mask;
589+   _FLOAT_REG_mask.assignFrom( VM_Version::supports_evex() ? _FLOAT_REG_EVEX_mask : _FLOAT_REG_LEGACY_mask) ;
590590}
591591
592592static bool generate_vzeroupper(Compile* C) {
@@ -1678,22 +1678,22 @@ bool Matcher::use_asm_for_ldiv_by_con( jlong divisor ) {
16781678}
16791679
16801680// Register for DIVI projection of divmodI
1681- RegMask Matcher::divI_proj_mask() {
1681+ const  RegMask&  Matcher::divI_proj_mask() {
16821682  return INT_RAX_REG_mask();
16831683}
16841684
16851685// Register for MODI projection of divmodI
1686- RegMask Matcher::modI_proj_mask() {
1686+ const  RegMask&  Matcher::modI_proj_mask() {
16871687  return INT_RDX_REG_mask();
16881688}
16891689
16901690// Register for DIVL projection of divmodL
1691- RegMask Matcher::divL_proj_mask() {
1691+ const  RegMask&  Matcher::divL_proj_mask() {
16921692  return LONG_RAX_REG_mask();
16931693}
16941694
16951695// Register for MODL projection of divmodL
1696- RegMask Matcher::modL_proj_mask() {
1696+ const  RegMask&  Matcher::modL_proj_mask() {
16971697  return LONG_RDX_REG_mask();
16981698}
16991699
0 commit comments