IRC logs for #openrisc Monday, 2015-01-19

--- Log opened Mon Jan 19 00:00:03 2015
poke53282yesterday, I started again on updating QEMU. I want to get rid of all those cross compiling issues, that we can port a lightweight distribution to openrisc like Alpine Linux.09:29
poke53282I spent 30% of the time in rebasing and 70% in compiling a static qemu version.09:30
poke53282Static binaries are outdated. But unfortunately this is one of the very very rare cases, where you need one.09:31
olofkhaha09:31
olofkSounds like I should avoid qemu :)09:31
poke53282Yes, archlinux does not support static libraries anymore.09:32
olofkyikes. Not at all?09:32
olofkAre we using a vanilla upstream qemu by the way?09:32
poke53282no, they remove all those files from there packages.09:32
olofkah ok. With gentoo you can choose if you want them in most cases09:32
poke53282At the moment, there is the official QEMU version with a very bad OpenRISC support.09:33
poke53282Then there are two repositories from me and blueCmd with a very much improved QEMU support with a one year old QEMU version.09:33
poke53282Yesterday I rebased mine with the official repository.09:34
poke53282And I will add the patches from blueCmd.09:34
olofkah ok. It would be great to have that upstream09:35
poke53282I will put then my repository on https://github.com/openrisc09:35
poke53282Yes, would be great.09:35
poke53282QEMU is so much nicer than or1ksim. In my opinion.09:36
poke53282The qemu user mode especially.09:37
olofkYes, for most uses I guess qemu makes more sense, but or1ksim is still considered our golden reference09:37
poke53282Unfortunately the QEMU-user mode still lack its own chroot support. Therefore we need a static QEMU compiled binary.09:38
poke53282yes, or1ksim is even slower than jor1k was two years ago.09:39
poke53282by design.09:39
poke53282Which is Ok, but it makes it pretty much unusable.09:40
poke53282Two days ago I wanted to run gcc inside QEMU user mode. But the linking process gave me QEMU errors. Therefore I decided before I fix the erros to rebase first.09:42
olofkIs anyone handy with socket-activated services? I would like OpenOCD to start when I connect to localhost:4444 and quit when I close the socket10:51
olofkIf I haven't got completely lost in the newlib #ifdef jungle, I would say it looks like _NO_LONGLONG is defined, which I guess would explain things14:27
olofkbtw, is the following true for or1k: "sizeof (long long) = sizeof long > sizeof int" ?14:28
olofkThere is a comment that says this around an ifdef that controls long long behaviour14:30
poke53282you can use "cpp" to execute the preprocessor and to see the output.14:30
poke53282Yes, ifdefs can be terrible to read.14:31
olofkpoke53282: Do you mean using the preprocessor to expand all the #ifdefs and #defines?14:31
poke53282yes14:32
olofkhmm... that can be a bit tricky since automake compiles that file with a lot of include directives and defines14:34
poke53282printf("%i %i %i \n", sizeof(int), sizeof(long), sizeof(long long));14:34
poke532824 4 814:34
poke53282Yes, that can be tricky.14:35
poke53282for such things like to check the sizeofs, the jor1k compile demo is perfect.14:36
olofkAh. That's true14:38
olofkand to sum it up, long and int have equal size. Maybe that's the problem here14:39
poke53282yes, but I think, that's the normal behavior for gcc.14:40
poke53282x86 gcc 64 Bit gives 4 8 8.14:41
poke53282I don't have the any 32 Bit gcc here to test.14:42
LoneTechpoke53282: your compiler can probably do it using -m32, and it would likely yield 4 4 814:46
poke53282/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory14:47
LoneTechlong will generally be int_fast32_t, i.e. at lest 32 bit but a type that fits in a register (if possible)14:48
LoneTechpardon. fast32 isn't 64 bit since amd64 is decent at 32 bit14:50
olofkAh cool. I got another idea for what's might be wrong now14:50
LoneTechthere are a bunch of other conventions for naming the sizes of these types, like ilp64: https://en.wikipedia.org/wiki/64-bit_computing#64-bit_data_models14:52
olofkok, so by adding --enable-newlib-io-long-long we get the correct result14:53
olofkI wonder if this is an arch-specific setting14:53
LoneTechI think most current openriscs use 32 bit long14:54
poke53282Could be.14:54
olofkAh ok. README says "     Disabled by default, but many hosts enable it in configure.host.14:54
olofk"14:54
poke53282In principle such things are the task of the configure script.14:55
olofkSo it's not a bug, it's a feature :)14:55
poke53282:)14:59
olofkstekern, wallento : There is one remaining bug for newlib in bugzilla (http://bugzilla.opencores.org/show_bug.cgi?id=86). Do you have any updates on that? Would be great to clear it out now that we're upstream19:17
olofkwallento: I'm interested in this one as well http://bugzilla.opencores.org/show_bug.cgi?id=3119:45
olofkstekern: A new version of newlib was released with working or1k support, so I'm thinking of putting a snapshot tar ball of or1k-gcc on the OpenCores FTP so that people can build a toolchain without relying on any git components. What should I call it?20:57
olofkgcc-4.9.1+git-150116 ?20:58
olofkAnd maybe we should bundle21:02
olofkGCC with a Windows registry cleaner and an IE toolbar21:02
stekernolofk: I have fixed that bug (86) iirc21:04
olofkAwesome!21:04
ysionneauolofk: and an auto-switch for the homepage to openrisc web page21:04
olofkysionneau: I forgot that one :)21:05
ysionneauand a gcc daemon, which runs some obscure bitcoin miner^Wcode optimizer21:05
olofkSeem like your malware skills are more up to date :)21:06
olofkHmm.. I'm getting errors when I try to build gdb from or1k-src21:44
olofkhttp://pastie.org/984196721:44
olofkI got perhaps get around it with Werror, but it seems to be in opcodes, which I assume should be identical to what we have in upstream binutils, so why am I only getting the error here?21:46
olofkah ok. or1k-desc-h does differ on the three places where I got the errors21:51
--- Log closed Tue Jan 20 00:00:04 2015

Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!