Changeset 13306


Ignore:
Timestamp:
Dec 17, 2009, 7:07:57 PM (10 years ago)
Author:
gz
Message:

Merge ffcall, float tweaks (r13221, r13234, r13298, r13299)

Location:
branches/working-0711/ccl
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl

  • branches/working-0711/ccl/compiler/X86/X8664/x8664-vinsns.lisp

    r13070 r13306  
    43484348                                             ((v :lisp)
    43494349                                              (idx :u32const)))
    4350   (movsd (:%xmm val) (:@ (:apply + x8664::misc-data-offset (:apply ash idx 2))(:%q v))))
     4350  (movss (:%xmm val) (:@ (:apply + x8664::misc-data-offset (:apply ash idx 2)) (:%q v))))
    43514351
    43524352(define-x8664-vinsn array-data-vector-ref (((dest :lisp))
  • branches/working-0711/ccl/compiler/X86/x86-asm.lisp

    r13070 r13306  
    30733073   (def-x86-opcode ucomisd ((:anymem :insert-memory) (:regxmm :insert-xmm-reg))
    30743074     #x0f2e #o000 #x0 #x66)
    3075    (def-x86-opcode comisd ((:regxmm :insert-xmm-rm) (:regxmm :insert-xmm-reg))
    3076      #x0f2e #o300 #x0 u#x66)
    3077 
    3078    
     3075   (def-x86-opcode ucomisd ((:regxmm :insert-xmm-rm) (:regxmm :insert-xmm-reg))
     3076     #x0f2e #o300 #x0 #x66)
     3077
    30793078   ;; comiss
    30803079   (def-x86-opcode comiss ((:anymem :insert-memory) (:regxmm :insert-xmm-reg))
     
    32473246   
    32483247   ;; pslld
     3248   (def-x86-opcode pslld ((:regmmx :insert-mmx-rm) (:regmmx :insert-mmx-reg))
     3249     #x0ff2 #o300 #x0)
     3250   (def-x86-opcode pslld ((:anymem :insert-memory) (:regmmx :insert-mmx-reg))
     3251     #x0ff2 #o000 #x0)
     3252   (def-x86-opcode pslld ((:imm8 :insert-imm8) (:regmmx :insert-mmx-rm))
     3253     #x0f72 #o360 #o0)
     3254   (def-x86-opcode pslld ((:regxmm :insert-modrm-rm) (:regxmm :insert-modrm-reg))
     3255     #x0ff2 #o300 #x0 #x66)
     3256   (def-x86-opcode pslld ((:anymem :insert-memory) (:regxmm :insert-modrm-reg))
     3257     #x0ff2 #o000 #x0 #x66)
     3258   (def-x86-opcode pslld ((:imm8 :insert-imm8) (:regxmm :insert-xmm-rm))
     3259     #x0f72 #o360 #o0 #x66)
    32493260
    32503261   ;; pslldq
     
    32673278
    32683279   ;; psrld
     3280   (def-x86-opcode psrld ((:regmmx :insert-mmx-rm) (:regmmx :insert-mmx-reg))
     3281     #x0fd2 #o300 #x0)
     3282   (def-x86-opcode psrld ((:anymem :insert-memory) (:regmmx :insert-mmx-reg))
     3283     #x0fd2 #o000 #x0)
     3284   (def-x86-opcode psrld ((:imm8 :insert-imm8) (:regmmx :insert-mmx-rm))
     3285     #x0f72 #o320 #o0)
     3286   (def-x86-opcode psrld ((:regxmm :insert-modrm-rm) (:regxmm :insert-modrm-reg))
     3287     #x0fd2 #o300 #x0 #x66)
     3288   (def-x86-opcode psrld ((:anymem :insert-memory) (:regxmm :insert-modrm-reg))
     3289     #x0fd2 #o000 #x0 #x66)
     3290   (def-x86-opcode psrld ((:imm8 :insert-imm8) (:regxmm :insert-xmm-rm))
     3291     #x0f72 #o320 #o0 #x66)
    32693292
    32703293   ;; psrldq
  • branches/working-0711/ccl/compiler/X86/x86-lapmacros.lisp

    r13070 r13306  
    637637     (box-fixnum ,imm ,imm)
    638638     (subl (% ,imm) (% ,dest))))
     639
     640(defx86lapmacro double-constant (name value)
     641  (multiple-value-bind (high low)
     642      (double-float-bits (float value 1.0d0))
     643    `(progn
     644       (:uuo-section)
     645       (:align 3)
     646       ,name
     647       (:long ,low)
     648       (:long ,high)
     649       (:main-section))))
  • branches/working-0711/ccl/lisp-kernel/x86-spentry64.s

    r13070 r13306  
    39833983        __(push %arg_z)
    39843984        __(push %fn)
    3985         __ifndef([WINDOWS])
     3985        __ifndef([TCR_IN_GPR])
    39863986        __(push %save3) 
    39873987        __endif
     
    40834083        __(pop %save1)
    40844084        __(pop %save2)
    4085         __ifndef([WINDOWS])
     4085        __ifndef([TCR_IN_GPR])
    40864086        __(pop %save3)
    40874087        __endif
     
    42014201        __(push %arg_y)
    42024202        __(push %arg_z)
    4203         __ifndef([WINDOWS])
     4203        __ifndef([TCR_IN_GPR])
    42044204        __(push %save3)
    42054205        __endif
     
    43044304        __(pop %save1)
    43054305        __(pop %save2)
    4306         __ifndef([WINDOWS])
     4306        __ifndef([TCR_IN_GPR])
    43074307        __(pop %save3)
    43084308        __endif
     
    44134413        __(push %arg_y)
    44144414        __(push %arg_z)
    4415         __ifndef([WINDOWS])
     4415        __ifndef([TCR_IN_GPR])
    44164416         __(push %save3)
    44174417        __endif
     
    44794479        __(pop %save1)
    44804480        __(pop %save2)
    4481         __ifndef([WINDOWS])
     4481        __ifndef([TCR_IN_GPR])
    44824482         __(pop %save3)
    44834483        __endif
Note: See TracChangeset for help on using the changeset viewer.