Backed out changeset: e36d69e04aa1

This commit is contained in:
Botanic 2013-02-08 03:08:59 -08:00
parent 341e468d5b
commit 3d2b747e6d

View file

@ -258,21 +258,21 @@ bool CVPParser::parseInputRegister(CVPOperand &operand, std::string &errorOutput
}
switch (strValue)
{
case 'OPOS': operand.Value.InputRegisterValue = CVPOperand::IPosition; break;
case 'WGHT': operand.Value.InputRegisterValue = CVPOperand::IWeight; break;
case 'NRML': operand.Value.InputRegisterValue = CVPOperand::INormal; break;
case 'COL0': operand.Value.InputRegisterValue = CVPOperand::IPrimaryColor; break;
case 'COL1': operand.Value.InputRegisterValue = CVPOperand::ISecondaryColor; break;
case 'FOGC': operand.Value.InputRegisterValue = CVPOperand::IFogCoord; break;
case "OPOS": operand.Value.InputRegisterValue = CVPOperand::IPosition; break;
case "WGHT": operand.Value.InputRegisterValue = CVPOperand::IWeight; break;
case "NRML": operand.Value.InputRegisterValue = CVPOperand::INormal; break;
case "COL0": operand.Value.InputRegisterValue = CVPOperand::IPrimaryColor; break;
case "COL1": operand.Value.InputRegisterValue = CVPOperand::ISecondaryColor; break;
case "FOGC": operand.Value.InputRegisterValue = CVPOperand::IFogCoord; break;
// texture argument
case 'TEX0':
case 'TEX1':
case 'TEX2':
case 'TEX3':
case 'TEX4':
case 'TEX5':
case 'TEX6':
case 'TEX7':
case "TEX0":
case "TEX1":
case "TEX2":
case "TEX3":
case "TEX4":
case "TEX5":
case "TEX6":
case "TEX7":
operand.Value.InputRegisterValue = (CVPOperand::EInputRegister) (((CVPOperand::ITex0 + strValue) & 0xff) - '0');
break;
default:
@ -386,21 +386,21 @@ bool CVPParser::parseOutputRegister(CVPOperand &operand, std::string &errorOutpu
// convert to enum
switch(strValue)
{
case 'HPOS': operand.Value.OutputRegisterValue = CVPOperand::OHPosition; break;
case 'COL0': operand.Value.OutputRegisterValue = CVPOperand::OPrimaryColor; break;
case 'COL1': operand.Value.OutputRegisterValue = CVPOperand::OSecondaryColor; break;
case 'BFC0': operand.Value.OutputRegisterValue = CVPOperand::OBackFacePrimaryColor; break;
case 'BFC1': operand.Value.OutputRegisterValue = CVPOperand::OBackFaceSecondaryColor; break;
case 'FOGC': operand.Value.OutputRegisterValue = CVPOperand::OFogCoord; break;
case 'PSIZ': operand.Value.OutputRegisterValue = CVPOperand::OPointSize; break;
case 'TEX0': operand.Value.OutputRegisterValue = CVPOperand::OTex0; break;
case 'TEX1': operand.Value.OutputRegisterValue = CVPOperand::OTex1; break;
case 'TEX2': operand.Value.OutputRegisterValue = CVPOperand::OTex2; break;
case 'TEX3': operand.Value.OutputRegisterValue = CVPOperand::OTex3; break;
case 'TEX4': operand.Value.OutputRegisterValue = CVPOperand::OTex4; break;
case 'TEX5': operand.Value.OutputRegisterValue = CVPOperand::OTex5; break;
case 'TEX6': operand.Value.OutputRegisterValue = CVPOperand::OTex6; break;
case 'TEX7': operand.Value.OutputRegisterValue = CVPOperand::OTex7; break;
case "HPOS": operand.Value.OutputRegisterValue = CVPOperand::OHPosition; break;
case "COL0": operand.Value.OutputRegisterValue = CVPOperand::OPrimaryColor; break;
case "COL1": operand.Value.OutputRegisterValue = CVPOperand::OSecondaryColor; break;
case "BFC0": operand.Value.OutputRegisterValue = CVPOperand::OBackFacePrimaryColor; break;
case "BFC1": operand.Value.OutputRegisterValue = CVPOperand::OBackFaceSecondaryColor; break;
case "FOGC": operand.Value.OutputRegisterValue = CVPOperand::OFogCoord; break;
case "PSIZ": operand.Value.OutputRegisterValue = CVPOperand::OPointSize; break;
case "TEX0": operand.Value.OutputRegisterValue = CVPOperand::OTex0; break;
case "TEX1": operand.Value.OutputRegisterValue = CVPOperand::OTex1; break;
case "TEX2": operand.Value.OutputRegisterValue = CVPOperand::OTex2; break;
case "TEX3": operand.Value.OutputRegisterValue = CVPOperand::OTex3; break;
case "TEX4": operand.Value.OutputRegisterValue = CVPOperand::OTex4; break;
case "TEX5": operand.Value.OutputRegisterValue = CVPOperand::OTex5; break;
case "TEX6": operand.Value.OutputRegisterValue = CVPOperand::OTex6; break;
case "TEX7": operand.Value.OutputRegisterValue = CVPOperand::OTex7; break;
default:
errorOutput = "Can't read index for output register.";
return false;
@ -755,7 +755,7 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
}
switch (instrStr)
{
case 'ARL ':
case "ARL ":
instr.Opcode = CVPInstruction::ARL;
if (!parseOp2(instr, errorOutput)) return false;
if (!instr.Src1.Swizzle.isScalar())
@ -764,7 +764,7 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
return false;
}
break;
case 'RSQ ':
case "RSQ ":
instr.Opcode = CVPInstruction::RSQ;
if (!parseOp2(instr, errorOutput)) return false;
if (!instr.Src1.Swizzle.isScalar())
@ -773,8 +773,8 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
return false;
}
break;
case 'EXP ':
case 'EXPP':
case "EXP ":
case "EXPP":
instr.Opcode = CVPInstruction::EXPP;
if (!parseOp2(instr, errorOutput)) return false;
if (!instr.Src1.Swizzle.isScalar())
@ -789,7 +789,7 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
return false;
}*/
break;
case 'LOG ':
case "LOG ":
instr.Opcode = CVPInstruction::LOG;
if (!parseOp2(instr, errorOutput)) return false;
if (!instr.Src1.Swizzle.isScalar())
@ -805,7 +805,7 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
}
*/
break;
case 'RCP ':
case "RCP ":
instr.Opcode = CVPInstruction::RCP;
if (!parseOp2(instr, errorOutput)) return false;
if (!instr.Src1.Swizzle.isScalar())
@ -815,60 +815,60 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
}
break;
/////////////////
case 'MOV ':
case "MOV ":
instr.Opcode = CVPInstruction::MOV;
if (!parseOp2(instr, errorOutput)) return false;
break;
case 'LIT ':
case "LIT ":
instr.Opcode = CVPInstruction::LIT;
if (!parseOp2(instr, errorOutput)) return false;
break;
/////////////////
case 'MAD ':
case "MAD ":
instr.Opcode = CVPInstruction::MAD;
if (!parseOp4(instr, errorOutput)) return false;
break;
/////////////////
case 'ADD ':
case "ADD ":
instr.Opcode = CVPInstruction::ADD;
if (!parseOp3(instr, errorOutput)) return false;
break;
/////////////////
case 'MUL ':
case "MUL ":
instr.Opcode = CVPInstruction::MUL;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'DP3 ':
case "DP3 ":
instr.Opcode = CVPInstruction::DP3;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'DP4 ':
case "DP4 ":
instr.Opcode = CVPInstruction::DP4;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'DST ':
case "DST ":
instr.Opcode = CVPInstruction::DST;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'MIN ':
case "MIN ":
instr.Opcode = CVPInstruction::MIN;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'MAX ':
case "MAX ":
instr.Opcode = CVPInstruction::MAX;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'SLT ':
case "SLT ":
instr.Opcode = CVPInstruction::SLT;
if (!parseOp3(instr, errorOutput)) return false;
break;
case 'SGE ':
case "SGE ":
instr.Opcode = CVPInstruction::SGE;
if (!parseOp3(instr, errorOutput)) return false;
break;
/////////////////
case 'END ':
case "END ":
endEncountered = true;
return true;
break;
@ -885,7 +885,7 @@ bool CVPParser::parseInstruction(CVPInstruction &instr, std::string &errorOutput
}
// it is not allowed to write to an adress register except for ARL
if (instrStr != 'ARL ')
if (instrStr != "ARL ")
{
if (instr.Dest.Type == CVPOperand::AddressRegister)
{