Normally, the hw that does an integer div or mul is very different the hw 
executes the fp version.    Float mult/div should probably be handled by a 
different unit. 

Ali

Sent from my ARM powered device

On May 27, 2011, at 7:09 AM, Maximilien Breughe 
<maximilien.breu...@elis.ugent.be> wrote:

> Hello,
> 
> I am using M5's inorder model (in ALPHA_SE mode).
> I found out that the InOrderCPU::createBackEndSked only makes schedules for 
> the MultDivUnit IF the instruction is an Integer multiplication/division. It 
> doesn't do this for floating point mul/divs. Is there a special purpose for 
> this?
> 
> Changing it to allow for fp mul/div only involves changing the following 
> lines:
> in cpu/inorder/cpu.cc in the function InOrderCPU::createBackEndSked:
> ---else if (inst->opClass() == IntMultOp || inst->opClass() == IntDivOp) {
>        X.needs(MDU, MultDivUnit::StartMultDiv);
> 
> +++else if (inst->opClass() == IntMultOp || inst->opClass() == IntDivOp || 
> inst->opClass() == FloatDivOp|| inst->opClass() == FloatMultOp ) {
>        X.needs(MDU, MultDivUnit::StartMultDiv);
> 
> and similar lines in cpu/inorder/resources/mult_div_unit.cc (in functions 
> MultDivUnit::getSlot, MultDivUnit::execute and MultDivUnit::exeMulDiv).
> 
> 
> Kind regards,
> 
> Max
> _______________________________________________
> gem5-users mailing list
> gem5-users@m5sim.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
> 
_______________________________________________
gem5-users mailing list
gem5-users@m5sim.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to