riscv: Fix unsigned 32bit loads
riscv: Fix unsigned 32bit loads

the invariant for the risc-v codegen is, that 64bit regs
generally contain the sign-extension of a 32bit value.
This wasn't heeded by loads of 32bit values from memory, which
used lwu and ultimately caused a miscompilation in string_test
of tcctest.c.

Now most of tcctest.c works (not with -run, but with linking
a real executable), except some ftoi/ftof conversions.

mirror/tinycc,mingodad/tinycc,mirror/tinycc,mingodad/tinycc,mingodad/tinycc,mingodad/tinycc,mirror/tinycc,mirror/tinycc