Actions
Bug #12198
openBit vector sizes do not match: 64 != 3.
Start date:
03/01/2023
Due date:
% Done:
100%
Estimated time:
Detected in build:
git
Platform:
Published in build:
Description
Ошибка:
Optimizing MIR... list dependencies... 188/945... ******************************************************************************** ATTENTION! An unexpected error has occurred: java.lang.IllegalArgumentException: Bit vector sizes do not match: 64 != 3. The program will be terminated. Please contact us at: microtesk-support@ispras.ru We are sorry for the inconvenience. Exception stack: java.lang.IllegalArgumentException: Bit vector sizes do not match: 64 != 3. at ru.ispras.fortress.data.types.bitvector.BitVectorMath.checkEqualSize(BitVectorMath.java:1255) at ru.ispras.fortress.data.types.bitvector.BitVectorMath.transform(BitVectorMath.java:1231) at ru.ispras.fortress.data.types.bitvector.BitVectorMath.add(BitVectorMath.java:869) at ru.ispras.microtesk.translator.mir.BvOpcode$1.evalBitVector(BvOpcode.java:27) at ru.ispras.microtesk.translator.mir.BvOpcode.evalConst(BvOpcode.java:139) at ru.ispras.microtesk.translator.mir.EvalContext.visit(EvalContext.java:137) at ru.ispras.microtesk.translator.mir.Instruction$Assignment.accept(Instruction.java:43) at ru.ispras.microtesk.translator.mir.EvalContext.eval(EvalContext.java:122) at ru.ispras.microtesk.translator.mir.InlinePass.apply(InlinePass.java:44) at ru.ispras.microtesk.translator.mir.MirPassDriver.apply(MirPassDriver.java:83) at ru.ispras.microtesk.translator.mir.MirPassDriver.run(MirPassDriver.java:104) at ru.ispras.microtesk.translator.mir.MirTransHandler.processIr(MirTransHandler.java:75) at ru.ispras.microtesk.translator.mir.MirTransHandler.processIr(MirTransHandler.java:54) at ru.ispras.microtesk.translator.Translator.processIr(Translator.java:84) at ru.ispras.microtesk.translator.nml.NmlTranslator.start(NmlTranslator.java:131) at ru.ispras.microtesk.translator.Translator.translate(Translator.java:201) at ru.ispras.microtesk.MicroTESK.translate(MicroTESK.java:167) at ru.ispras.microtesk.MicroTESK.runTask(MicroTESK.java:159) at ru.ispras.microtesk.MicroTESK.main(MicroTESK.java:84) ******************************************************************************** > Task :translateK64 FAILED
Нужно внести правки в спецификацию.
Сложность состоит в том, что нужно определить это место.
Updated by Alexander Protsenko over 1 year ago
- Status changed from New to Open
Код с ошибкой:
op FPConditionCode (cc: card(3)) action = { if cc == 0 then FPConditionCode_value = FCSR_FCC_0; else FPConditionCode_value = FCSR_FCC_1_7<cc-1>; endif; }
Ошибка в строке: FPConditionCode_value = FCSR_FCC_1_7<cc-1>;
Корректный вариант:
var temp_cc [card(3)] op FPConditionCode (cc: card(3)) action = { if cc == 0 then FPConditionCode_value = FCSR_FCC_0; else temp_cc = cc-1; FPConditionCode_value = FCSR_FCC_1_7<temp_cc>; endif; }
(Предположу, что ошибка связана с появлением возможности задать диапазон через "-")
Updated by Alexander Protsenko over 1 year ago
- Status changed from Open to Resolved
- % Done changed from 0 to 100
Actions