Mercurial > emacs
view oldXMenu/descrip.mms @ 51723:635066222916
(ALIGN): Add casts to simplify usage.
(BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
(ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
(struct ablock, struct ablocks): New types.
(free_ablock): New global var.
(lisp_align_malloc, lisp_align_free): New functions.
(FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
(struct float_block): Reorder and add gcmarkbits.
(GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
(FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
(init_float, make_float): Use lisp_align_malloc.
(free_float, live_float_p): Don't use `type' any more.
(make_float): Use FLOAT_UNMARK to access to mark bit.
(mark_maybe_object, mark_maybe_pointer, survives_gc_p):
Use FLOAT_MARKED_P to access the mark bit.
(pure_alloc): Simplify use of ALIGN.
(mark_object): Use FLOAT_MARK to access the mark bit.
(gc_sweep): Use new macros to access the float's mark bit.
(init_alloc_once): Init free_ablock.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Fri, 04 Jul 2003 20:19:06 +0000 |
parents | bbce331da1be |
children | 1e98efa5f4b3 |
line wrap: on
line source
!# Uncomment following line if linking temacs complains about missing insque. EXTRA=insque.obj AS = as CC = cc LD = link TAGS = etags RM = delete MV = rename AR = library/insert MAKE = mms STD_DEFINES = CDEBUGFLAGS = /debug/noopt RM_CMD = $(RM) *.BAK.*, *.obj.* SRCS = Activate.c, - AddPane.c, - AddSel.c, - ChgPane.c, - ChgSel.c, - Create.c, - DelPane.c, - DelSel.c, - Destroy.c, - Error.c, - EvHand.c, - FindPane.c, - FindSel.c, - InsPane.c, - InsSel.c, - Internal.c, - Locate.c, - Post.c, - Recomp.c, - SetAEQ.c, - SetFrz.c, - SetPane.c, - SetSel.c, - XDelAssoc.c, XLookAssoc.c, XCrAssoc.c, XDestAssoc.c, XMakeAssoc.c OBJS = Activate.obj, - AddPane.obj, - AddSel.obj, - ChgPane.obj, - ChgSel.obj, - Create.obj, - DelPane.obj, - DelSel.obj, - Destroy.obj, - Error.obj, - EvHand.obj, - FindPane.obj, - FindSel.obj, - InsPane.obj, - InsSel.obj, - Internal.obj, - Locate.obj, - Post.obj, - Recomp.obj, - SetAEQ.obj, - SetFrz.obj, - SetPane.obj, - SetSel.obj, - XDelAssoc.obj, XLookAssoc.obj, XCrAssoc.obj, XDestAssoc.obj, - XMakeAssoc.obj .c.obj : if f$search("$@") then $(RM) $@.* $(CC) /obj=$@ $(CFLAGS) $*.c all :: libXMenu11.olb ! libXMenu11.olb : $(OBJS) $(EXTRA) if f$search("$@") then $(RM) $@.* $(AR)/create $@ $(OBJS) if ("$(EXTRA)" .nes. "") then $(AR) $@ $(EXTRA) #If running ranlib fails, probably there is none. #That's ok. So don't stop the build. distclean : clean ! clean :: $(RM_CMD) \#* libXMenu11.a *.obj, tags :: $(TAGS) -t *.[ch]