



or1ksim simulator
by ptb on Oct 22, 2014 |
ptb
Posts: 4 Joined: Oct 22, 2014 Last seen: Feb 27, 2021 |
||
I've compiled or1ksim from github (using the zip file download as source)
OpenRISC 1000 Architectural Simulator, version 2012-04-27 and I reckon it found the gnu toolchain in /opt/or1k-toolchain. I compiled the gnu toolchain myself using the instructions at https://github.com/juliusbaxter/mor1kx-dev-env/wiki/OpenRISC-tool-chain-installation-guide but it seems to me those are aimed at the mor1kx architectures. Certainly when I run "make check" on the or1ksim compile I get errors: === libsim Summary === # of expected passes 252 # of unexpected failures 9 # of unresolved testcases 1 Test Run By ptb on Tue Oct 21 19:04:44 2014 Native configuration is i686-pc-linux-gnu === or1ksim Summary === # of expected passes 3654 # of unexpected failures 8 # of unresolved testcases 2 Now the or1ksim README says Or1ksim can be tested with "make check", but this requires the GNU tool chain to be installed (using the same target specification) OK .. but what IS the target specification? Nobody has unbundled the jargon "target specification" for me in this readme :-(. How do I find out what it is for or1ksim and how do I find out what it is for the toolchain I just compiled, and how do I change it if it needs changing? I'm only interested in supporting or1ksim, which I plan to mess with, not anything metal. [is the target supposed to be the or1ksim architecture itself? Or the architecture that or1ksim simulates (which is?)? What are these called? Or is the "target" supposed to be my own native achitecture i686-pc-linux-gnu, or one of its aliases?] |
RE: or1ksim simulator
by ptb on Oct 23, 2014 |
ptb
Posts: 4 Joined: Oct 22, 2014 Last seen: Feb 27, 2021 |
||
Seems nobody will answer the simplest question! Is this the right place to post about the or1ksim code?
I'll have a go then ... 1) My or1ksim code is compiled with "target" --targets-all and --target=i486-linux gnu, according to config.log. I don't know why .. the instructions in the INSTALL just said to type "./config; make", so I did! However, the info file says that --target defines the openrisc 1000 architecture, and defaults to or1k-elf if not specified. Make (default) specifies it, but as an intel architecture, not as a or1k architecture. Contradictions. Thus I have no idea what is going on. Is there somebody watching who can rewrite the appropriate paragraphs? Obviously the implicit contexts must be intended to be different, and lack of explicit context in the docs is a general problem. 2) My or1k toolchain is compiled with --target=or1k-elf, because I follwed the instructions for the mor1k howto (well, that was the only instructions I could find that even seemed up to date) and it said to do that. Is that why I get 9 failed tests of or1ksim? I would have expected every test to fail with a mismatch like that! Do I recompile the toolchain (shudder - what would be the point? I am ON an intel arch and I have an intel toolchain already) or the or1ksim? (then how would I run it on intel!) Or is the documentation up the creek? Is it perhaps expected that or1ksim FAIL 9 of its own regression tests in this (current) iteration of the code? Where would I see that? Are regression tests for a release logged somewhere? Please someone shed some light. Where should I ask if not here? |
RE: or1ksim simulator
by ptb on Oct 27, 2014 |
ptb
Posts: 4 Joined: Oct 22, 2014 Last seen: Feb 27, 2021 |
||
I finally figured that this forum doesn't tend to garner technical answers, so I switched to the mailgroups.
There Peter Gavin and folks told me that the compilation is right, the docs are wrong-ish, and the test is indeed indicating a failure, and that the work around is to configure with --disable-shared on a 32-bit machine. At this point I'm not convinced anyone knows what the actual technical problem really is. Maybe. The doc problem is that the README contains a hangover from times when there really were alternative simulator architectures (dlx?). Now, effectively, there aren't, but the paragraph exhorting one to have compiled with the "same" "target architecture" as "the gnu tool-chain" is still there, without explanation. They mean the gnu cross-compile tool-chain and they mean the simulated architecture, not the native architecture, and the answer is --target=or1k-elf but that's default wherever there's a choice, so it doesn't matter. There are still a couple of fails showing up in the automated simulator check, but I'm told those must be testbench artifacts (bugs!), as the test results themselves are right. Now can somebody point me toward producing some custom hello world code to run in the simulator, and tell me how ,,, |
RE: or1ksim simulator
by jt_eaton on Oct 27, 2014 |
jt_eaton
Posts: 142 Joined: Aug 18, 2008 Last seen: Sep 29, 2018 |
||
The doc problem is that the README contains a hangover from times when there really were alternative simulator architectures (dlx?). Now, effectively, there aren't, but the paragraph exhorting one to have compiled with the "same" "target architecture" as "the gnu tool-chain" is still there, without explanation. They mean the gnu cross-compile tool-chain and they mean the simulated architecture, not the native architecture, and the answer is --target=or1k-elf but that's default wherever there's a choice, so it doesn't matter. So what is the official name of the openrisc gnu tool-chain? Is it or1k-elf or or32-elf? John Eaton |
RE: or1ksim simulator
by jeremybennett on Oct 28, 2014 |
jeremybennett
Posts: 815 Joined: May 29, 2008 Last seen: Jun 13, 2019 |
||
Hi John,
The change happened between the GCC 4.5.1 tool chain (which is or32-xxx) and the current GCC 4.9 development (which is or1k-xxx). The regression testing setup was all created for the GCC 4.5.1 tool chain, which was professionally developed and tested (by us, Embecosm) in preparation for its use with TechEdSat. GCC 4.5.1 does indeed pass with no regression failures. The current tool chain is known to have some regression failures, and they need fixing. HTH, Jeremy (and you are correct, the best place for asking hard techie questions is the mailing lists). |
RE: or1ksim simulator
by jt_eaton on Oct 28, 2014 |
jt_eaton
Posts: 142 Joined: Aug 18, 2008 Last seen: Sep 29, 2018 |
||
Hi John,
The change happened between the GCC 4.5.1 tool chain (which is or32-xxx) and the current GCC 4.9 development (which is or1k-xxx). The regression testing setup was all created for the GCC 4.5.1 tool chain, which was professionally developed and tested (by us, Embecosm) in preparation for its use with TechEdSat. GCC 4.5.1 does indeed pass with no regression failures. The current tool chain is known to have some regression failures, and they need fixing. HTH, Jeremy (and you are correct, the best place for asking hard techie questions is the mailing lists). Thanks Jeremy, I tried compiling the gnu-stable version on Ubuntu 14.10 but get a error of: bfd.texinfo:326: unknown command `colophon' bfd.texinfo:337: unknown command `cygnus' Researched it and it was due to an old version of binutils. Upgraded to 2.24 and get some other weird errors so I am going to try a development version. John Eaton |



