---------- 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

Reply via email to