Custom Query (1030 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (184 - 186 of 1030)

Ticket Resolution Summary Owner Reporter
#47 fixed xpMMXreg macro (from x86-exceptions.h) not used, and appears wrong for darwin Gary Byers R. Matthew Emerson
Description

(lines 38--39 in lisp-kernel/x86-exceptions.h)

#define xpFPRvector(x) ((natural *)(&(UC_MCONTEXT(x)->__fs.__fpu_xmm0)))
#define xpMMXreg(x,n)  (xpFPRvector(x)[n])

The x87/mmx regs don't immediately follow the first xmm register in the darwin floating point state struct.

xpMMxreg appears to be unused at the moment, so it doesn't affect anything, but it seems like it ought to be corrected or deleted.

#52 fixed shorter encodings for movl $imm32, %reg and movw $imm16, %reg R. Matthew Emerson R. Matthew Emerson
Description

It looks like we could save a byte of space by using a shorter encoding of MOV in the following cases.

Images built with this change applied seem to work fine. The images are abut 28K smaller---a savings of about 0.2%, if it's even meaningful to make such comparisons.

$ svn diff x86-asm.lisp 
Index: x86-asm.lisp
===================================================================
--- x86-asm.lisp        (revision 7024)
+++ x86-asm.lisp        (working copy)
@@ -1877,8 +1877,8 @@
      #x8b #o0 #x00)
    (def-x8664-opcode movl ((:reg32 :insert-modrm-reg) (:anymem :insert-memory))
      #x89 #o0 #x00)
-   (def-x8664-opcode movl ((:imm32s :insert-imm32s) (:reg32 :insert-modrm-rm))
-     #xc7 #o300 #x00)
+   (def-x8664-opcode movl ((:imm32s :insert-imm32s) (:reg32 :insert-opcode-reg))
+     #xb8 nil #x00)
    (def-x8664-opcode movl ((:imm32s :insert-imm32s) (:anymem :insert-memory))
      #xc7 #o000 #x00)
 
@@ -1889,8 +1889,8 @@
      #x8b #o0 #x00  #x66)
    (def-x8664-opcode movw ((:reg16 :insert-modrm-reg) (:anymem :insert-memory))
      #x89 #o0 #x00 #x66)
-   (def-x8664-opcode movw ((:imm16 :insert-imm16) (:reg16 :insert-modrm-rm))
-     #xc7 #o300 #x00 #x66)
+   (def-x8664-opcode movw ((:imm16 :insert-imm16) (:reg16 :insert-opcode-reg))
+     #xb8 nil #x00 #x66)
    (def-x8664-opcode movw ((:imm16 :insert-imm16) (:anymem :insert-memory))
      #xc7 #o000 #x00 #x66)
#109 fixed x86-64 inspector fails to print closed-over value correctly R. Matthew Emerson R. Matthew Emerson
Description
CL-USER> (defun make-adder (n)
	   #'(lambda (x)
	       (+ x n)))
MAKE-ADDER
CL-USER> (setf junk (make-adder 100))
#<COMPILED-LEXICAL-CLOSURE #x3000411258BF>
CL-USER> (inspect *)
[0]     #<COMPILED-LEXICAL-CLOSURE #x3000411258BF>
[1]     Name: NIL
[2]     Arglist (analysis): (X)
[3]     Inner lfun: #<Anonymous Function #x30004112C3AF>
        Closed over values
[5]     N: #<error printing SINGLE-FLOAT #xF2000000000051>
Inspect> 

The value for N is obviously printed incorrectly.

Batch Modify
Note: See TracBatchModify for help on using batch modify.
Note: See TracQuery for help on using queries.