Ignore:
Timestamp:
Nov 3, 2009, 11:15:50 PM (10 years ago)
Author:
gz
Message:

merge r13143, r13164 (fixes to compiler type handling)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/compiler/X86/x862.lisp

    r13086 r13165  
    6363         ,@body)))))
    6464
    65  
    66 (defun x862-immediate-operand (x)
    67   (if (eq (acode-operator x) (%nx1-operator immediate))
    68     (cadr x)
    69     (compiler-bug "not an immediate: ~s" x)))
     65
    7066
    7167(defmacro with-x86-p2-declarations (declsform &body body)
     
    37033699             (if (nx-t constant)
    37043700               (! compare-to-t ireg)
    3705                (let* ((imm (x862-immediate-operand constant))
     3701               (let* ((imm (acode-immediate-operand constant))
    37063702                      (reg (x862-register-constant-p imm)))
    37073703                 (if reg
     
    85288524      (x862-form seg nil nil i)
    85298525      (x862-form seg nil xfer j)))
    8530   (let* ((type-keyword (x862-immediate-operand typename))
     8526  (let* ((type-keyword (acode-immediate-operand typename))
    85318527         (fixtype (nx-lookup-target-uvector-subtag type-keyword ))
    85328528         (safe (unless *x862-reckless* fixtype))
     
    85838579      (x862-form seg nil nil j)
    85848580      (x862-form seg nil xfer k)))
    8585   (let* ((type-keyword (x862-immediate-operand typename))
     8581  (let* ((type-keyword (acode-immediate-operand typename))
    85868582         (fixtype (nx-lookup-target-uvector-subtag type-keyword ))
    85878583         (safe (unless *x862-reckless* fixtype))
     
    87258721
    87268722(defx862 x862-%aset2 simple-typed-aset2 (seg vreg xfer typename arr i j new &optional dim0 dim1)
    8727   (let* ((type-keyword (x862-immediate-operand typename))
     8723  (let* ((type-keyword (acode-immediate-operand typename))
    87288724         (fixtype (nx-lookup-target-uvector-subtag type-keyword))
    87298725         (safe (unless *x862-reckless* fixtype))
     
    87348730
    87358731(defx862 x862-%aset3 simple-typed-aset3 (seg vreg xfer typename arr i j k new &optional dim0 dim1 dim2)
    8736   (let* ((type-keyword (x862-immediate-operand typename))
     8732  (let* ((type-keyword (acode-immediate-operand typename))
    87378733         (fixtype (nx-lookup-target-uvector-subtag type-keyword))
    87388734         (safe (unless *x862-reckless* fixtype))
     
    87478743            (if fixtype
    87488744              (nx-target-uvector-subtag-name fixtype)
    8749               (x862-immediate-operand subtag)))))
     8745              (acode-immediate-operand subtag)))))
    87508746    (if type-keyword
    87518747      (x862-vref seg vreg xfer type-keyword uvector index (unless *x862-reckless* (nx-lookup-target-uvector-subtag type-keyword)))
     
    87668762            (if fixtype
    87678763              (nx-target-uvector-subtag-name fixtype)
    8768               (x862-immediate-operand subtag)))))
     8764              (acode-immediate-operand subtag)))))
    87698765    (if type-keyword
    87708766      (x862-vset seg vreg xfer type-keyword uvector index newval (unless *x862-reckless* (nx-lookup-target-uvector-subtag type-keyword)))
Note: See TracChangeset for help on using the changeset viewer.