170 if( !m->is_Mach() ) continue; 171 MachNode *mach = m->as_Mach(); 172 was_store = false; 173 int iop = mach->ideal_Opcode(); 174 switch( iop ) { 175 case Op_LoadB: 176 case Op_LoadUB: 177 case Op_LoadUS: 178 case Op_LoadD: 179 case Op_LoadF: 180 case Op_LoadI: 181 case Op_LoadL: 182 case Op_LoadP: 183 case Op_LoadN: 184 case Op_LoadS: 185 case Op_LoadKlass: 186 case Op_LoadNKlass: 187 case Op_LoadRange: 188 case Op_LoadD_unaligned: 189 case Op_LoadL_unaligned: 190 assert(mach->in(2) == val, "should be address"); 191 break; 192 case Op_StoreB: 193 case Op_StoreC: 194 case Op_StoreCM: 195 case Op_StoreD: 196 case Op_StoreF: 197 case Op_StoreI: 198 case Op_StoreL: 199 case Op_StoreP: 200 case Op_StoreN: 201 case Op_StoreNKlass: 202 was_store = true; // Memory op is a store op 203 // Stores will have their address in slot 2 (memory in slot 1). 204 // If the value being nul-checked is in another slot, it means we 205 // are storing the checked value, which does NOT check the value! 206 if( mach->in(2) != val ) continue; 207 break; // Found a memory op? 208 case Op_StrComp: 209 case Op_StrEquals: 210 case Op_StrIndexOf: 211 case Op_AryEq: | 170 if( !m->is_Mach() ) continue; 171 MachNode *mach = m->as_Mach(); 172 was_store = false; 173 int iop = mach->ideal_Opcode(); 174 switch( iop ) { 175 case Op_LoadB: 176 case Op_LoadUB: 177 case Op_LoadUS: 178 case Op_LoadD: 179 case Op_LoadF: 180 case Op_LoadI: 181 case Op_LoadL: 182 case Op_LoadP: 183 case Op_LoadN: 184 case Op_LoadS: 185 case Op_LoadKlass: 186 case Op_LoadNKlass: 187 case Op_LoadRange: 188 case Op_LoadD_unaligned: 189 case Op_LoadL_unaligned: 190 case Op_StoreB: 191 case Op_StoreC: 192 case Op_StoreCM: 193 case Op_StoreD: 194 case Op_StoreF: 195 case Op_StoreI: 196 case Op_StoreL: 197 case Op_StoreP: 198 case Op_StoreN: 199 case Op_StoreNKlass: 200 was_store = true; // Memory op is a store op 201 // Stores will have their address in slot 2 (memory in slot 1). 202 // If the value being nul-checked is in another slot, it means we 203 // are storing the checked value, which does NOT check the value! 204 if( mach->in(2) != val ) continue; 205 break; // Found a memory op? 206 case Op_StrComp: 207 case Op_StrEquals: 208 case Op_StrIndexOf: 209 case Op_AryEq: |