|
Message
From: Robert Cragie<rcc@j...>
Date: Mon Aug 23 09:28:30 CEST 2004
Subject: [openrisc] or1ksim basic.S error
You are executing the following:l.sw 0x0(r1),r2 r1 contains 0xfffffffd, so you are trying to do a word access at a halfword-aligned address. This will cause an alignment exception.
Robert Cragie, Design Engineer _______________________________________________________________ Jennic Ltd, Furnival Street, Sheffield, S1 4QT, UK http://www.jennic.com Tel: +44 (0) 114 281 2655 _______________________________________________________________
> -----Original Message----- > From: openrisc-bounces@o... > [mailto:openrisc-bounces@o...]On Behalf Of zhustudio > Sent: 22 August 2004 04:14 > To: openrisc@o... > Subject: [openrisc] or1ksim basic.S error > > > hi all, > > here is the or1ksim log at the end of program, basic.S > i saw basic.S call 'report' function > but when it call report, it execute l.sw 0x0(r1),r2. > > it reports > Exception 0x600 (Alignment) at 0x4000914, EA: 0xfffffffd, ppc: > 0x4000914, npc: 0x4000918, #568 > > what's the matter of that ? > > i simulate other c program, such as uart, it has no error. > > and in support.c > i find report function is (in no OR1K define section) > void report(unsigned long value) > { > printf("report(0x%x);\n", (unsigned) value); > } > > > Thank you. > > zhustudio > > > 04000910: (_report): 9c21fffc l.addi r1,r1,-4 (next insn) > GPR00: 00000000 GPR01: 00000001 GPR02: 00000003 GPR03: deaddead > GPR04: 00000000 GPR05: 00008001 GPR06: ffffffff GPR07: fffffffa > GPR08: 1243f8b2 GPR09: 040006e4 GPR10: 04000660 GPR11: 000007ff > GPR12: 00000fff GPR13: 00001fff GPR14: 00003fff GPR15: 00007fff > GPR16: ffff0012 GPR17: ffff0011 GPR18: ffff8010 GPR19: ffffc00f > GPR20: ffffe00e GPR21: fffff00d GPR22: fffff80c GPR23: fffffc0b > GPR24: fffffe0a GPR25: ffffff09 GPR26: ffffff88 GPR27: ffffffc7 > GPR28: ffffffe6 GPR29: fffffff5 GPR30: fffffffc GPR31: > 00000040 flag: 0 > 04000910: (_report): 9c21fffc l.addi r1,r1,-4 (executed) [time 11520ns, > #567] > HAZARDWAIT: 0 > 04000914: : d4011000 l.sw 0x0(r1),r2 (next insn) > GPR00: 00000000 GPR01: fffffffd GPR02: 00000003 GPR03: deaddead > GPR04: 00000000 GPR05: 00008001 GPR06: ffffffff GPR07: fffffffa > GPR08: 1243f8b2 GPR09: 040006e4 GPR10: 04000660 GPR11: 000007ff > GPR12: 00000fff GPR13: 00001fff GPR14: 00003fff GPR15: 00007fff > GPR16: ffff0012 GPR17: ffff0011 GPR18: ffff8010 GPR19: ffffc00f > GPR20: ffffe00e GPR21: fffff00d GPR22: fffff80c GPR23: fffffc0b > GPR24: fffffe0a GPR25: ffffff09 GPR26: ffffff88 GPR27: ffffffc7 > GPR28: ffffffe6 GPR29: fffffff5 GPR30: fffffffc GPR31: > 00000040 flag: 0 > ################################################################### > Exception 0x600 (Alignment) at 0x4000914, EA: 0xfffffffd, ppc: > 0x4000914, npc: 0x4000918, #568 > ################################################################### > 04000914: : d4011000 l.sw 0x0(r1),r2 (executed) [time 11540ns, #568] > HAZARDWAIT: 0 > 04000918: : 9c410004 l.addi r2,r1,0x4 (next insn) > GPR00: 00000000 GPR01: fffffffd GPR02: 00000003 GPR03: deaddead > GPR04: 00000000 GPR05: 00008001 GPR06: ffffffff GPR07: fffffffa > GPR08: 1243f8b2 GPR09: 040006e4 GPR10: 04000660 GPR11: 000007ff > GPR12: 00000fff GPR13: 00001fff GPR14: 00003fff GPR15: 00007fff > GPR16: ffff0012 GPR17: ffff0011 GPR18: ffff8010 GPR19: ffffc00f > GPR20: ffffe00e GPR21: fffff00d GPR22: fffff80c GPR23: fffffc0b > GPR24: fffffe0a GPR25: ffffff09 GPR26: ffffff88 GPR27: ffffffc7 > GPR28: ffffffe6 GPR29: fffffff5 GPR30: fffffffc GPR31: > 00000040 flag: 0 > 00000600: : 00000000 l.j 0x0 (executed) [time 11560ns, #569] > HAZARDWAIT: 0 > 00000604: : 00000000 l.j 0x0 (next insn) (delay insn) > GPR00: 00000000 GPR01: fffffffd GPR02: 00000003 GPR03: deaddead > GPR04: 00000000 GPR05: 00008001 GPR06: ffffffff GPR07: fffffffa > GPR08: 1243f8b2 GPR09: 040006e4 GPR10: 04000660 GPR11: 000007ff > GPR12: 00000fff GPR13: 00001fff GPR14: 00003fff GPR15: 00007fff > GPR16: ffff0012 GPR17: ffff0011 GPR18: ffff8010 GPR19: ffffc00f > GPR20: ffffe00e GPR21: fffff00d GPR22: fffff80c GPR23: fffffc0b > GPR24: fffffe0a GPR25: ffffff09 GPR26: ffffff88 GPR27: ffffffc7 > GPR28: ffffffe6 GPR29: fffffff5 GPR30: fffffffc GPR31: > 00000040 flag: 0 > 00000604: : 00000000 l.j 0x0 (executed) [time 11580ns, #570] > HAZARDWAIT: 0 >
|
 |