pulp-platform / ri5cy_gnu_toolchain

22 stars 23 forks source link

Assembler incorrectly detects c.andi and c.li with zero immediate as illegal operations #13

Open deepsrc opened 6 years ago

deepsrc commented 6 years ago

Assembler is incorrectly detecting C.LI and C.ANDI with zero immediate value as illegal operations even though the specification allows it. The error message is pasted below.

riscv32-unknown-elf-g++ -o src/.gen/test_info_cpu0.o -c -std=c++11 -c -fno-exceptions -fno-rtti -O3 -fno-threadsafe-statics -mcmodel=medany -fno-zero-initialized-in-bss -march=IMXpulpv2 -ggdb -DRV32 -Isrc/kernel -Isrc/include -Isrc/.gen -Isrc/kernel/rv -Isrc/emitted -Isrc/co_proc/lib -Isrc/co_proc/drivers -Isrc/.gen/Conf2Cpp -Isrc/lib -Isrc/kernel/hw src/.gen/test_info_cpu0.cpp riscv32-unknown-elf-g++ -x assembler-with-cpp -c -mcmodel=medany -Isrc/include -Isrc/.gen -Isrc/emitted -Isrc/.gen/Conf2Cpp -Isrc/kernel/rv/ -march=IMXpulpv2 -ggdb -DRV32 -o src/.gen/test_0.o src/.gen/test_0.s src/.gen/test_0.s: Assembler messages: src/.gen/test_0.s:703: Error: illegal operands c.li x13,0' src/.gen/test_0.s:1176: Error: illegal operandsc.andi x10,0'

haugoug commented 6 years ago

We released a new toolchain based on gcc 7, you can find it there: https://github.com/pulp-platform/pulp-riscv-gnu-toolchain It seems this issue is fixed with the new toolchain, can you confirm and close this tracker ?

haugoug commented 6 years ago

Did this one also disappear ?