---------- Forwarded message ---------- From: Jose Teixeira de Sousa <[email protected]> Date: Sat, May 3, 2014 at 4:20 PM Subject: Re: mor1kx debug (was [RFC] or1k atomic operation instructions) To: Stefan Kristiansson <[email protected]>
Stefan, it worked with Verilator too! Thanks. I updated branch https://github.com/jjts/orpsoc-cores/tree/icarus as you were right about or1200 specificity. Unfortunately it does not load the elf file for now but you can load it with gdb. Here's how to run it now if you need: fusesoc sim --force --sim verilator de0_nano_sim -d -j In another term do: src/openocd -f tcl/interface/jtag_vpi.cfg -f tcl/board/or1k_generic.cfg (make sure JTAG tap is set to MOHOR) Transcript of gdb session: (gdb) set remotetimeout unlimited (gdb) target remote :3333 Remote debugging using :3333 0x00000108 in __reset () (gdb) load hello_func Loading section .vectors, size 0x2000 lma 0x0 Loading section .init, size 0x28 lma 0x2000 Loading section .text, size 0x1735c lma 0x2028 Loading section .fini, size 0x1c lma 0x19384 Loading section .rodata, size 0x131c lma 0x193a0 Loading section .eh_frame, size 0x4 lma 0x1c6bc Loading section .ctors, size 0x8 lma 0x1c6c0 Loading section .dtors, size 0x8 lma 0x1c6c8 Loading section .jcr, size 0x4 lma 0x1c6d0 Loading section .data, size 0xa40 lma 0x1c6d4 Start address 0x100, load size 110868 Transfer rate: 474 bytes/sec, 7391 bytes/write. (gdb) l 5 // c = c + 1; 6 // return c; 7 //} 8 9 main(){ 10 //int i; 11 // for (i=0; i<1; i++) 12 // printf("Hello, World!\r\n"); 13 14 int a = 3; (gdb) 15 printf("a = %d\r\n", a); 16 int b = 6; 17 printf("b = %d\r\n", b); 18 19 int c, d; 20 21 c = a + b; 22 23 d = a*b; 24 (gdb) 25 // c = foo(c); 26 scanf("%d" , &c); 27 printf("Hello: c = %d\r\n", c); 28 exit(0); 29 } (gdb) Line number 30 out of range; hello_func.c has 29 lines. (gdb) b 17 Breakpoint 1 at 0x240c: file hello_func.c, line 17. (gdb) c Continuing. [Remote target] #1 stopped. main () at hello_func.c:17 17 printf("b = %d\r\n", b); (gdb) n [Remote target] #1 stopped. main () at hello_func.c:21 21 c = a + b; (gdb) quit Regards Jose On Thu, May 1, 2014 at 10:00 PM, Stefan Kristiansson < [email protected]> wrote: > On Thu, May 1, 2014 at 10:45 AM, Stefan Kristiansson > <[email protected]> wrote: > > > > Yes, I can now reproduce the behaviour above with mor1kx with the > > de0_nano board. > > I'll investigate further. > > > > I've pushed a couple of commits to openrisc/mor1kx that should fix it, > at least my test cases works now. > Could you please give it a try and confirm that it works for you too now? > > Stefan > -- Jose T. de Sousa, PhD Office: +351 213 100 213 R. Alves Redol 9 1000-029 Lisboa Portugal -- Jose T. de Sousa, PhD Office: +351 213 100 213 R. Alves Redol 9 1000-029 Lisboa Portugal
_______________________________________________ OpenRISC mailing list [email protected] http://lists.openrisc.net/listinfo/openrisc
