lkcl | markos_, it can't be too much because the only way to obtain the money is by reducing the amount given to other people for doing other work, such as this https://bugs.libre-soc.org/show_bug.cgi?id=1031 | 07:53 |
---|---|---|
lkcl | that's 5 instructions which need writing - they're relatively straightforward so the amount could go down and be moved to maddsubrs | 07:54 |
markos_ | no, I wouldn't want that I was hoping that there is an amount unallocated, if there isn't any, we'll leave it at that | 07:54 |
lkcl | we can sort something out another way | 07:56 |
markos_ | ok | 07:57 |
lkcl | https://bugs.libre-soc.org/show_bug.cgi?id=961 is under pressure for the amount of work to be done, even at EUR 100k. | 07:57 |
markos_ | programmerjake, found the bug, it's the calculation of the masks that's the problem, the actual product is correct | 07:57 |
markos_ | working on a fix now | 07:58 |
programmerjake | yay | 08:04 |
programmerjake | one other place that might have issues is if the add/sub overflows | 08:06 |
programmerjake | well, it's late here, so ttyl | 08:08 |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has quit IRC | 09:44 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.168.221> has joined #libre-soc | 09:45 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.168.221> has quit IRC | 09:47 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has joined #libre-soc | 09:48 | |
markos_ | how can I sign extend to XLEN*2 (even for XLEN=64, so to 128-bit SelectableInt)? | 14:14 |
markos_ | tried EXTSXL(RT, XLEN*2) but I still get a SelectableInt of 64-bits | 14:14 |
markos_ | I need to add a XLEN*2 to a XLEN number | 14:15 |
markos_ | solved the maddsubrs now doing the same fix for its counterpart, maddrs | 14:16 |
markos_ | and I have res1 <- (RT) + prod, where prod is XLEN*2 and (RT) is XLEN | 14:16 |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has quit IRC | 15:27 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.55.13> has joined #libre-soc | 15:28 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.55.13> has quit IRC | 15:45 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.56.29> has joined #libre-soc | 15:54 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.56.29> has quit IRC | 16:12 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@81.200.17.113> has joined #libre-soc | 16:13 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@81.200.17.113> has quit IRC | 16:22 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.56.29> has joined #libre-soc | 16:23 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.56.29> has quit IRC | 16:31 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.160.137> has joined #libre-soc | 16:31 | |
programmerjake | `temp[0:XLEN*2-1] <- EXTS(v)` should work, or you can do `EXTSXL(v[0], 1) || v` | 16:36 |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.160.137> has quit IRC | 16:36 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has joined #libre-soc | 16:36 | |
programmerjake | for an example, see https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=openpower/isa/svfixedarith.mdwn;h=6ce79fb69925bef2faef666c0a251e860ec3e3b0;hb=HEAD#l39 | 16:37 |
markos_ | programmerjake, that was it, thanks! | 16:50 |
markos_ | pushed | 16:51 |
markos_ | all tests pass now | 16:51 |
markos_ | feel free to check yourself and if it's good, we can close this | 16:52 |
programmerjake | i'll check later, probably today | 17:02 |
programmerjake | i'll probably just write a much more thorough unit test | 17:02 |
lkcl | cesar, have you heard about this? https://science.slashdot.org/story/23/07/19/2130208/something-in-space-has-been-lighting-up-every-20-minutes-since-1988 | 19:38 |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has quit IRC | 19:39 | |
programmerjake | i read that just recently...scientists haven't found the best explanation for everything yet | 19:40 |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.172.246> has joined #libre-soc | 19:43 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.172.246> has quit IRC | 19:50 | |
*** choozy <choozy!~choozy@75-63-174-82.ftth.glasoperator.nl> has joined #libre-soc | 19:50 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.56.19> has joined #libre-soc | 19:50 | |
*** choozy <choozy!~choozy@75-63-174-82.ftth.glasoperator.nl> has quit IRC | 22:07 | |
markos_ | lkcl, programmerjake both instructions write to both RT, RS, why are they prohibited? I remember there was some discussion why that /might/ be a problem, but I don't remember anything final | 23:50 |
markos_ | programmerjake, also, maddrs is supposed to be used in conjuction with maddsubrs | 23:51 |
markos_ | the first one is for single butterfly : fdct_round_shift((a +/- b) * c) | 23:53 |
programmerjake | the issue is that reading 4 inputs is too many | 23:53 |
programmerjake | my suggested replacement would replace uses of the maddsubrs maddrs pair, not maddsubrs by itself | 23:54 |
markos_ | well, as it is, it's news to me that these are prohibited | 23:56 |
markos_ | so no point in arguing one way or the other | 23:56 |
markos_ | if there is no chance of getting these instructions in, I say that it's just a wasted opportunity | 23:58 |
programmerjake | k, the main idea is that instruction inputs/outputs are quite expensive to track, so we want to reduce those as much as possible. 3-in/2-out is just about doable, 4-in/2-out is too much | 23:58 |
programmerjake | maddsubrs should be fine | 23:58 |
markos_ | I don't understand, they both take and write the same number of registers | 23:59 |
markos_ | why is one good and the other is bad | 23:59 |
lkcl | markos_, it's final and absolute. | 23:59 |
markos_ | well it's still news | 23:59 |
markos_ | you could have said that earlier | 23:59 |
lkcl | Dependency Matrices. i did go over it. | 23:59 |
programmerjake | because they read different numbers of registers | 23:59 |
lkcl | i did. | 23:59 |
lkcl | set theory. | 23:59 |
markos_ | not in a final way you didn't, you said that it would be hard, not that it would be impossible | 23:59 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!