1263320SdimPull in r199940 from upstream llvm trunk (by Eric Christopher): 2263320Sdim 3263320Sdim Fix out of bounds access to the double regs array. Given the 4263320Sdim code this looks correct, but could use review. The previous 5263320Sdim was definitely not correct. 6263320Sdim 7269012SemasteIntroduced here: http://svnweb.freebsd.org/changeset/base/262261 8263320Sdim 9263320SdimIndex: lib/Target/Sparc/AsmParser/SparcAsmParser.cpp 10263320Sdim=================================================================== 11263320Sdim--- lib/Target/Sparc/AsmParser/SparcAsmParser.cpp 12263320Sdim+++ lib/Target/Sparc/AsmParser/SparcAsmParser.cpp 13263320Sdim@@ -734,7 +734,7 @@ bool SparcAsmParser::matchRegisterName(const AsmTo 14263320Sdim && !name.substr(1, 2).getAsInteger(10, intVal) 15263320Sdim && intVal >= 32 && intVal <= 62 && (intVal % 2 == 0)) { 16263320Sdim // FIXME: Check V9 17263320Sdim- RegNo = DoubleRegs[16 + intVal/2]; 18263320Sdim+ RegNo = DoubleRegs[intVal/2]; 19263320Sdim RegKind = SparcOperand::rk_DoubleReg; 20263320Sdim return true; 21263320Sdim } 22