-!- Jia` is now known as Jia | 05:49 | |
zewan | Hello all. I just read l.sfgeui description and I have the same question that Yann Vernier asked "Why is value to be compared to unsigned sign-extended?" | 09:54 |
---|---|---|
stekern | zewan: I don't know, but I agree it's odd. Where is Yann Vernier asking that? | 10:18 |
stekern | I actually asked the same question to myself some week ago when I had introduced a bug in llvm under the assumption that the immediate would be zero-extended | 10:26 |
zewan | stekern, In OR1200 arch manual at page 98. Is that bug or documenation error? | 10:41 |
stekern | ah, yes, in the annotation field | 10:54 |
stekern | well it seems to be implemented everywhere as it is stated in the arch manual, so I guess it's a "feature" | 10:55 |
zewan | :) | 11:06 |
jeremybennett | stekern: zewan: What does MIPS do? OR1K generally follows MIPS in this area. | 11:27 |
stekern | mips zero-extend immediate on unsigned compare and sign-extend on signed | 11:30 |
zewan | it is quite logical. | 11:32 |
jeremybennett | So that can't be the reason. | 11:36 |
jeremybennett | But it applies to all the unsigned immediate flag setting, so it does look deliberate. | 11:38 |
jeremybennett | DLX also seems to be the same. | 11:40 |
jeremybennett | (as MIPS, not OR1K) | 11:40 |
jeremybennett | Might be worth posting to the mailing list or forums in case any of the long-term contributors know. I guess you might have to send an email to Damjan Lampret to fin dout. | 11:42 |
stekern | does unsigned compare exist in DLX? | 11:45 |
michaelliu | hi | 11:48 |
michaelliu | who can tell you, what he did say? http://paste.org/50593 | 11:49 |
michaelliu | building toolchian occur wrong | 11:49 |
stekern | apperantly according to: http://cs.uns.edu.ar/~jechaiz/arquitectura/windlx/DLXinst.html#InstrO | 11:50 |
michaelliu | sorry , type wrong word. | 11:50 |
michaelliu | please who can tell me. | 11:50 |
michaelliu | libbackend.a(toplev.o): In function `print_version': | 11:51 |
michaelliu | /opt/gnu-src/bd-elf/gcc/../../unisrc/gcc/toplev.c:1267: undefined reference to `mpc_get_version' | 11:51 |
stekern | but where have the convention of setting a flag instead of a register came form if it's not from DLX? (I assumed it came from there) | 11:53 |
zewan | michaelliu, It looks like you try to compile toolchain under M$. Try to use linux instead. ;-) | 12:03 |
michaelliu | yes. but i under cygwin occur wrong yet | 12:04 |
michaelliu | he did say /unisrc/gcc/toplev.c:1267: undefined reference to `mpc_get_version' . but i use objdump can see it in the toplev.o | 12:05 |
juliusb | Hmm, it seems strange to sign extend an immediate for unsigned compare. Maybe just an oversight by the original architecture implementers? | 12:06 |
juliusb | It's not like there haven't been any. | 12:07 |
stekern | mmm, sounds like a very plausible explanation | 12:08 |
juliusb | perhaps something for the architectural update? | 12:31 |
juliusb | (the clarification, I mean) | 12:31 |
Jia | hi all, I've update qemu-openrisc for V5. | 12:39 |
Jia | https://code.google.com/p/qemu-openrisc/ | 12:39 |
stekern | juliusb: hmm, what kind of clarification do you have in mind? | 13:11 |
juliusb | well, note in the spec that this isn't doesn't seem right, but is what we do. The other thing is we can fix it. | 13:13 |
juliusb | remove the sign extension | 13:13 |
jeremybennett | Bad idea in a central part of an established ISA. You would break so much code that assumed the current behaviour. You would need compiler variants for different versions of the architecture which would be neither forward nor backward compatible. | 13:14 |
stekern | yeah, the note sounds like a good idea (yann's note is there, but it's only visible in the odt when showing annotations) | 13:14 |
jeremybennett | It seems this is something to do in OR2K. | 13:15 |
stekern | removing it - I agree with jeremybennett | 13:15 |
jeremybennett | Agree with adding the note! | 13:15 |
stekern | it's not a huge issue anyway, a bit less efficient code will be generated in a limited amount of cases | 13:17 |
stekern | and you could probably work around it if you really put yourself into it | 13:17 |
jeremybennett | Interesting forum post from the guy wanting to do formal verification of OpenRISC. That should prove interesting. | 13:18 |
zewan | :) | 13:18 |
stekern | yes | 13:21 |
stekern | something else interesting: http://opencores.org/project,altor32 | 13:21 |
jeremybennett | Very interesting. | 13:28 |
jeremybennett | Do you know who the project owner is? | 13:28 |
jeremybennett | I've just had a look at the project owner's website: http://www.ultra-embedded.com/ | 13:31 |
jeremybennett | Same person behind the MPX (MIPS without the patented bits). | 13:31 |
jeremybennett | Which in turn looks rather like TigerMIPS (http://www.cl.cam.ac.uk/teaching/0910/ECAD+Arch/mips.html) | 13:33 |
juliusb | (sign extension of immediate issue): yes fair enoguh, a note is probably the best thing to do | 14:50 |
juliusb | that altor32 looks cool | 14:52 |
juliusb | ah right, in the soc code they have something indicating they've just dropped in the or1k-compliant core in place of an MPX one: | 14:55 |
juliusb | altor32 | 14:55 |
juliusb | u1_cpu | 14:55 |
juliusb | missing there was a comment: // MPX CPU | 14:55 |
stekern | so going from only having one (known) hardware implementation for ~10 years, we've got 4 now | 16:02 |
stekern | or1200, juliusbs mor1kx, pgavin et als no-delayslot and altor32 | 16:03 |
stekern | and same kind of increase on the simulator front: in addition to or1ksim, there is now a functional cgen simulator and a qemu port | 16:06 |
rooi-oog | hi all. Who knows why I can't download the latest draft of the OR1200 architecture specification? | 16:51 |
rooi-oog | this "http://opencores.org/websvn,filedetails?repname=openrisc&path=%2Fopenrisc%2Ftrunk%2Fdocs%2Fopenrisc_arch_draft.odt" link seems doesn't work! | 16:52 |
_franck_ | it works for me !! | 17:25 |
juliusb | very nice, I know stekern :) | 17:55 |
stekern | (and people working on at least two C/C++ compilers and one pascal compiler) ;) | 17:57 |
jeremybennett | stekern: I didn't know about the pascal compiler - who is doing that? | 18:01 |
stekern | Laksen and ... I've forgot he's name... (Kiwi something?) was working on a freepascal port | 19:07 |
Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!