2014-12-31 2 views
0

Я получаю исключение «Misaligned instruction access» при тестировании инструментальной цепочки RISC-V. Содержимое hello.c соответствует примеру, представленному в файле README.Misaligned instruction access - spike pk hello

Неужели кто-нибудь столкнулся с этой проблемой?

$ riscv-gcc -o hello hello.c 

$ spike pk hello 
z 0000000000000000 ra 0000000000000000 sp 0000000000000000 gp 0000000000000000 
tp 0000000000000000 t0 0000000000000000 t1 0000000000000017 t2 0000000000003514 
s0 0000000000000000 s1 000000007f800000 a0 0000000000000000 a1 0000000000000032 
a2 ffffffffffffffff a3 0000000080000000 a4 000000007f800000 a5 00000000000037c0 
a6 0000000000000017 a7 0000000000003514 s2 0000000000000000 s3 0000000000000000 
s4 0000000000000000 s5 0000000000000000 s6 0000000000000000 s7 0000000000000000 
s8 0000000000000000 s9 000000000000d028 sA 0000000000800000 sB 0000000000800000 
t3 00000000ff800000 t4 0000000000000000 t5 000000007f800000 t6 0000000000003f3c 
sr 0000000000000000 pc 00000000ff800000 va 0000000000000000 insn  00000000 
Misaligned instruction access! 

ответ

1

Чрезмерная фиксация была сделана в суперрепозиторе riscv-tools, который неправильно указал на новый компилятор riscv-pk, который содержит соглашение о несовместимости вызовов.

Ваша проблема должна быть решена сейчас (https://github.com/ucb-bar/riscv-pk/issues/6).

2

Тао J отвечает на этот вопрос:

http://tao-j.com/2014/12/risc-v-iii-build-tool-sets-and-linux/

Цитирование:

коммита из riscv-инструментов, которые используются ракеты-чип, испытан и действительным. Новейшая фиксация riscv-инструментов может быть сломана. Поэтому рекомендуется, чтобы не клонировал riscv-инструменты отдельно. Пожалуйста, используйте репозиторий , включенный в ракетный чип, который указывает на право фиксации.