2015-10-23T00:05:23Z nyef: Hrm. And on MIPS 1.0.23, it's coming up as 3CB00000 and the low bits are B (as opposed to 0 for x86-64). 2015-10-23T00:21:06Z attila_lendvai quit (Ping timeout: 240 seconds) 2015-10-23T00:28:55Z scymtym quit (Ping timeout: 244 seconds) 2015-10-23T00:30:11Z stassats`: nyef: my "mips" says 2.220446049250313d-16 2015-10-23T00:31:35Z nyef: Mmm. Mind grabbing the double-float-{high,low}-bits from that? 2015-10-23T00:31:49Z stassats`: they are the same as on x86-64 2015-10-23T00:32:16Z nyef: There are enough random kludged things in my environment that I have no idea if any given bit is an issue. 2015-10-23T00:32:27Z stassats`: bad hardware? 2015-10-23T00:32:32Z stassats`: minion: advice on hardware 2015-10-23T00:32:32Z minion: You can't expect automated advice for everything. 2015-10-23T00:34:17Z nyef: The hardware is _probably_ okay. But I did the Linux kernel port (which is still incomplete), I'm running a... four-month-old gentoo, and I cross-compiled from x86-64... 2015-10-23T00:34:29Z nyef: ... okay, build failed from 1.0.23-mipsbe, same symptom. 2015-10-23T00:35:02Z nyef: Yes, absolute same symptom. 2015-10-23T00:35:52Z stassats`: what kind of mips is that? 2015-10-23T00:36:23Z nyef: I have an Origin 350. MIPS-IV. I forget precisely what CPU type, but it's probably on the order of an R14k. 2015-10-23T00:37:03Z nyef: (Definitely a T5-type, wouldn't be an R10k, might be an R12k, unlikely to be an R16k, so probably an R14k. 2015-10-23T00:37:05Z nyef: ) 2015-10-23T00:38:46Z stassats`: how long did it take to build? 2015-10-23T00:39:24Z nyef: I can't really answer that, as I have yet to run a full self-hosted build on this machine. 2015-10-23T00:42:02Z nyef: Also? Cheneygc. 2015-10-23T00:42:22Z nyef: ... And I bet there's some stupid gc-breaking stuff in the backend, still. 2015-10-23T00:45:04Z stassats`: expt is an ffi function 2015-10-23T00:48:44Z nyef: ... It is? That might well do it. 2015-10-23T00:50:59Z nyef: Are you on mipsle or mipsbe? 2015-10-23T00:51:09Z stassats`: be 2015-10-23T00:51:19Z nyef: Okay, so it's not likely to be byte-order issues... 2015-10-23T00:54:36Z nyef: Yeah, I'm getting weird low bits on the results from expt. 2015-10-23T00:54:38Z stassats`: make a c program 2015-10-23T00:55:59Z dougk_: if anyone wants to review my README that would be nice 2015-10-23T00:56:17Z nyef: Umm... expt doesn't look like it involves ffi. 2015-10-23T00:56:33Z stassats`: it does 2015-10-23T00:56:57Z sammwch joined #sbcl 2015-10-23T00:57:22Z nyef: Are you thinking of exp? 2015-10-23T00:58:03Z nyef: Ugh. More double-float bit hacking without reference to symbolic constants. 2015-10-23T00:58:05Z stassats`: nope 2015-10-23T00:58:52Z sammwch quit (Client Quit) 2015-10-23T00:58:52Z nyef: Okay, where in this mess does it involve FFI? 2015-10-23T00:59:38Z stassats`: %pow 2015-10-23T01:00:30Z nyef: Ah, okay. 2015-10-23T01:01:03Z sammwch joined #sbcl 2015-10-23T01:01:15Z nyef: Damn. Inlined. 2015-10-23T01:01:27Z sammwch is now known as heddwch 2015-10-23T01:02:55Z stassats`: it's called with the same arguments 2015-10-23T01:11:30Z sjl__ quit (Ping timeout: 252 seconds) 2015-10-23T01:19:32Z nyef: ... Okay, a test C program is coming up with plausible results. 2015-10-23T01:20:06Z nyef: It's very plausible that I'm looking at a calling-convention change at some point over the past decade or so. 2015-10-23T01:20:25Z nyef: It's not like there aren't four or five calling conventions allowed for this machine. /-: 2015-10-23T01:22:07Z nyef: echo -e "#include \n#include \nint main(void) {\n union { double foo; unsigned int bar[2]; } baz;\n baz.foo = pow(2.0d, 1023.0d);\n printf(\"foo: %08x %08x\\\\n\", baz.bar[0], baz.bar[1]);\n return 0;\n}"> test.c 2015-10-23T01:22:13Z nyef: That's a workable test program, right? 2015-10-23T01:22:58Z stassats`: i'd rather avoid constant folding 2015-10-23T01:25:17Z nyef: On the presumption that the C toolchain might also be broken? 2015-10-23T01:31:08Z nyef: Okay, now I have a reason to avoid the constant folding. 2015-10-23T01:31:16Z nyef: ... how do I do that? 2015-10-23T01:31:28Z stassats`: argv? 2015-10-23T01:31:30Z nyef: It's been a long time since I've needed to tweak things in C this way. 2015-10-23T01:39:40Z nyef: Hrm. Userland claims to be o32, but apparently that could mean any number of variants. 2015-10-23T01:40:35Z stassats`: just look at what gcc produces? 2015-10-23T01:40:55Z nyef: Trying to find an example, yes. 2015-10-23T01:41:30Z stassats`: double expt(double x, double y) {return pow(x, y);} what about? 2015-10-23T01:41:55Z nyef: Ah, good point. 2015-10-23T01:43:14Z zacts joined #sbcl 2015-10-23T01:44:15Z nyef: Some sort of pipeline hazard between writes to odd/even floating-point register pairs? 2015-10-23T01:45:37Z nyef: Parameters in <$f12,$f13> and <$f14,$f15>, result in <$f0, $f1>. 2015-10-23T01:46:55Z stassats`: that's what sbcl does, but gcc passes x in F12 and y in F14 2015-10-23T01:46:58Z stassats`: no splits 2015-10-23T01:47:22Z nyef: Your gcc might. Mine doesn't. 2015-10-23T01:47:47Z nyef: ... And it sounds like you might be on the n32 ABI? 2015-10-23T01:49:16Z nyef: ... or any number of other variants. 2015-10-23T01:51:38Z stassats`: no, this is -mabi=32 2015-10-23T01:55:10Z stassats`: LWC1-ODD #, #, 1 is shown as LWC1 $F15, $A0[1] in the disassembler 2015-10-23T01:58:09Z nyef: Oh! Did I say a possible pipeline hazard? The SBCL code isn't honoring it. 2015-10-23T01:58:25Z nyef: Okay, where's my CPU documentation gotten to...? 2015-10-23T01:59:05Z stassats`: and i see stuff like ADDU NIL, -16888 2015-10-23T01:59:17Z stassats`: gcc says it's addiu gp,gp,-16888 2015-10-23T02:03:01Z nyef: ... There's a status register bit involved, set to either MIPS I / MIPS II mode or to MIPS III / MIPS IV mode. 2015-10-23T02:05:07Z stassats`: r28 isn't defined in vm.lisp 2015-10-23T02:05:10Z stassats`: saying ;; 28 is the global pointer of our C runtime, and used for ;; jump/branch relaxation in Lisp. 2015-10-23T02:05:32Z stassats`: great reason to not define it 2015-10-23T02:13:45Z nyef: I'm about ready to give up for a bit. 2015-10-23T02:14:08Z stassats`: ok, sounds like we have the same thing 2015-10-23T02:14:20Z stassats`: as far as the abi go 2015-10-23T02:14:31Z stassats`: so, it's not the abi 2015-10-23T02:20:29Z stassats`: do actual mips cpus have pipeline hazards? 2015-10-23T02:21:31Z nyef: Apparently there are a few, though some of them have interlocks, and because mine is a t5 it has the whole speculative execution thing going on, so I think that any hazards pretty much have to be on COP0 if there are any. 2015-10-23T02:22:48Z stassats`: can you step through it in gdb? 2015-10-23T02:23:09Z nyef: Honestly, I'm not up for trying tonight. 2015-10-23T02:35:13Z nyef: Okay, hardware shut down for the night, so it won't keep me up with the fan noise. 2015-10-23T04:10:10Z sjl joined #sbcl 2015-10-23T04:14:51Z sjl quit (Ping timeout: 260 seconds) 2015-10-23T04:21:57Z hydan quit (Remote host closed the connection) 2015-10-23T04:22:26Z hydan joined #sbcl 2015-10-23T04:39:37Z nikki93 joined #sbcl 2015-10-23T04:51:30Z nikki93 quit (Remote host closed the connection) 2015-10-23T04:57:41Z __Greg joined #sbcl 2015-10-23T04:57:45Z __Greg left #sbcl 2015-10-23T05:51:34Z Shinmera joined #sbcl 2015-10-23T06:10:55Z sjl joined #sbcl 2015-10-23T06:15:28Z sjl quit (Ping timeout: 252 seconds) 2015-10-23T06:34:23Z fridim_ joined #sbcl 2015-10-23T06:51:17Z psy_ joined #sbcl 2015-10-23T07:24:02Z stassats` quit (Ping timeout: 246 seconds) 2015-10-23T07:26:42Z sjl joined #sbcl 2015-10-23T07:31:00Z sjl quit (Ping timeout: 255 seconds) 2015-10-23T07:34:20Z Cymew joined #sbcl 2015-10-23T07:45:30Z scymtym__: dougk_: very minor changes to src/interpreter/README: http://paste.lisp.org/display/157324. moreover, i suggest merging the Advantages and Performance sections. also, having read the text, i am wondering how sb-fasteval interacts with the debugger and stepping, especially since the former was one of the major goals of the gsoc sb-eval2 interpreter, iirc. maybe you could add section for that. 2015-10-23T07:56:12Z rszeno quit (Quit: Leaving.) 2015-10-23T08:07:00Z loke quit (Ping timeout: 255 seconds) 2015-10-23T08:19:19Z loke joined #sbcl 2015-10-23T08:23:58Z ASau quit (Ping timeout: 265 seconds) 2015-10-23T08:27:26Z sjl joined #sbcl 2015-10-23T08:31:56Z sjl quit (Ping timeout: 246 seconds) 2015-10-23T08:56:14Z whiteline quit (Ping timeout: 250 seconds) 2015-10-23T08:56:17Z whiteline_ quit (Ping timeout: 256 seconds)