riscv is taking alignment traps reading cbfs.

The issue is that 64-bit fields are 32-bit aligned, which fails many places.

Thaminda found this comment:

  * Since coreboot is usually compiled 32bit, gcc will align 64bit
 * types to 32bit boundaries. If the coreboot table is dumped on a
 * 64bit system, a uint64_t would be aligned to 64bit boundaries,
 * breaking the table format.

this is a real problem. Would have broken badly on Alpha, and breaks badly
on RISCV.

We can fix it, with an ugly macro, but ... what's the right move here?

ron
-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to