Location Location::forValueRep(const ValueRep& rep) { switch (rep.kind()) { case ValueRep::Register: return forRegister(rep.reg(), 0); case ValueRep::Stack: return forIndirect(GPRInfo::callFrameRegister, rep.offsetFromFP()); case ValueRep::Constant: return forConstant(rep.value()); default: RELEASE_ASSERT_NOT_REACHED(); return Location(); } }