| Index: src/mips/regexp-macro-assembler-mips.cc | 
| diff --git a/src/mips/regexp-macro-assembler-mips.cc b/src/mips/regexp-macro-assembler-mips.cc | 
| index 1ae2a7a8455385bf6e4b479dbde76adb0800320d..ce2d635d634f6e6d23b0a18f1ed72a7e029a5be7 100644 | 
| --- a/src/mips/regexp-macro-assembler-mips.cc | 
| +++ b/src/mips/regexp-macro-assembler-mips.cc | 
| @@ -541,25 +541,20 @@ bool RegExpMacroAssemblerMIPS::CheckSpecialCharacterClass(uc16 type, | 
| case 's': | 
| // Match space-characters. | 
| if (mode_ == ASCII) { | 
| -      // ASCII space characters are '\t'..'\r' and ' '. | 
| +      // One byte space characters are '\t'..'\r', ' ' and \u00a0. | 
| Label success; | 
| __ Branch(&success, eq, current_character(), Operand(' ')); | 
| // Check range 0x09..0x0d. | 
| __ Subu(a0, current_character(), Operand('\t')); | 
| -      BranchOrBacktrack(on_no_match, hi, a0, Operand('\r' - '\t')); | 
| +      __ Branch(&success, ls, a0, Operand('\r' - '\t')); | 
| +      // \u00a0 (NBSP). | 
| +      BranchOrBacktrack(on_no_match, ne, a0, Operand(0x00a0 - '\t')); | 
| __ bind(&success); | 
| return true; | 
| } | 
| return false; | 
| case 'S': | 
| -    // Match non-space characters. | 
| -    if (mode_ == ASCII) { | 
| -      // ASCII space characters are '\t'..'\r' and ' '. | 
| -      BranchOrBacktrack(on_no_match, eq, current_character(), Operand(' ')); | 
| -      __ Subu(a0, current_character(), Operand('\t')); | 
| -      BranchOrBacktrack(on_no_match, ls, a0, Operand('\r' - '\t')); | 
| -      return true; | 
| -    } | 
| +    // The emitted code for generic character classes is good enough. | 
| return false; | 
| case 'd': | 
| // Match ASCII digits ('0'..'9'). | 
|  |