14166 |
14166 |
14167 if( index != 0 ) { |
14167 if( index != 0 ) { |
14168 __ stop("in storeIConditional: index != 0"); |
14168 __ stop("in storeIConditional: index != 0"); |
14169 } else { |
14169 } else { |
14170 __ bind(again); |
14170 __ bind(again); |
14171 if(UseSyncLevel >= 3000 || UseSyncLevel < 2000) __ sync(); |
14171 if (UseSyncLevel >= 10000 || UseSyncLevel == 1000 || UseSyncLevel == 4000) __ sync(); |
14172 __ ll(AT, addr); |
14172 __ ll(AT, addr); |
14173 __ bne(AT, oldval, failure); |
14173 __ bne(AT, oldval, failure); |
14174 __ delayed()->addu(AT, R0, R0); |
14174 __ delayed()->addu(AT, R0, R0); |
14175 |
14175 |
14176 __ addu(AT, newval, R0); |
14176 __ addu(AT, newval, R0); |