Changeset 528


Ignore:
Timestamp:
Feb 11, 2004, 7:16:27 PM (21 years ago)
Author:
Gary Byers
Message:

More portability stuff; still a ways to go.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lisp-kernel/macros.s

    r521 r528  
    8989        tdllt $@
    9090        ])
     91        define([trlle],[
     92        tdlle $@
     93        ])
    9194        define([treqi],[
    9295        tdeqi $@
     
    205208        ldr($1,misc_header_offset($2))])
    206209
     210
     211ifdef([PPC64],[
     212define([extract_typecode],[
     213        new_macro_labels()
     214        extract_fulltag($1,$2)
     215        cmpdi cr0,$1,fulltag_misc
     216        extract_lisptag($1,$1)
     217        bne cr0,macro_label(not_misc)
     218        extract_subtag($1,$2)
     219macro_label(not_misc):
     220])],[   
    207221define([extract_typecode],[
    208222        new_macro_labels()
     
    211225        bne cr0,macro_label(not_misc)
    212226        extract_subtag($1,$2)
    213 macro_label(not_misc):])
     227macro_label(not_misc):
     228])])
    214229
    215230define([box_fixnum],[
     
    403418])
    404419
     420ifdef([PPC64],[
     421define([trap_unless_list],[
     422        new_macro_labels()
     423        cmpdi ifelse($3,$3,cr0),$1,nil_value
     424        extract_fulltag($2,$1)
     425        beq ifelse($3,$3,cr0),macro_label(is_list)
     426        twnei $2,fulltag_cons
     427macro_label(is_list):   
     428
     429])],[   
     430define([trap_unless_list],[
     431        trap_unless_lisptag_equal($1,tag_list,$2)
     432])
     433])
     434
    405435define([trap_unless_fulltag_equal],[
    406436        extract_fulltag($3,$1)
     
    442472define([do_funcall],[
    443473        new_macro_labels()
    444         extract_lisptag(imm0,temp0)
    445         cmpri(imm0,tag_misc)
     474        extract_fulltag(imm0,temp0)
     475        cmpri(imm0,fulltag_misc)
    446476        mr nfn,temp0
    447477        bne- macro_label(bad)
Note: See TracChangeset for help on using the changeset viewer.