freenode/#sicl - IRC Chatlog
Search
2:49:45
no-defun-allowed
Hm, a STANDARD-OBJECT-CLASS-OF-INSTRUCTION has appeared in the MIR, and I assume it shouldn't because it would be replaced with a memory load.
3:10:25
no-defun-allowed
The next problem I have is that some lexical variable does not have an attribution, but is an input to an instruction. It is a NOOK-WRITE-INSTRUCTION somewhere in ROW-MAJOR-AREF, so I suppose I am getting somewhere still.
3:15:05
no-defun-allowed
Is there a convention for when to use MEMREF1 and an address addition or MEMREF2? I would guess the latter could only be implemented in one instruction when the offset is constant, on most RISC machines.
3:16:37
beach
I used to have only MEMREF1, but the MIR code because much bigger, and so did the code to generate it.
3:17:11
beach
The idea was to ultimately use "tiling", as suggested by scymtym, but that idea shall have to wait until later.
4:04:49
beach
no-defun-allowed: It looks like you are making great progress, even though you are pretty quiet about it.
4:33:44
no-defun-allowed
The method in question only contains a call to CLEAVIR-PRIMOP:AREF, so I will see if I can find if it appears in the HIR or MIR. Casual inspection of AST-to-HIR suggests that the HIR should be fine still.
4:35:12
beach
I'll let you look a bit yourself. My main mission this morning is to go buy food, so I'll be distracted for a while.
4:45:08
no-defun-allowed
It happens when processing a BOX-INSTRUCTION with element-type DOUBLE-FLOAT, more specifically. And I can see that there is an OBJECT-LOCATION which is an input to that NOOK-WRITE-INSTRUCTION, but never an output.
4:46:25
no-defun-allowed
There is a call to MAKE-INSTANCE which outputs to the output of the original BOX-INSTRUCTION, and I think the NOOK-WRITE-INSTRUCTION should use that location as well.
5:05:09
no-defun-allowed
But come to think of it, there should not be NOOK-{WRITE,READ}-INSTRUCTIONs in MIR if I am not mistaken.
5:08:15
no-defun-allowed
Could I call PROCESS-INSTRUCTION on an intermediate NOOK-WRITE-INSTRUCTION as part of processing BOX-INSTRUCTION?
5:11:08
no-defun-allowed
When boxing a DOUBLE-FLOAT, we generate a call for something like (make-instance 'double-float), producing an object, then write the value into a nook of the object.