added realloc to xma
This commit is contained in:
@ -1,10 +1,11 @@
|
||||
AM_CPPFLAGS = -I$(top_srcdir)/include -DNDEBUG
|
||||
|
||||
bin_PROGRAMS = chr str sll lda htb rbt fio pio sio time main rex01
|
||||
bin_PROGRAMS = xma chr str sll lda htb rbt fio pio sio time main rex01
|
||||
|
||||
LDFLAGS = -L../../lib/cmn
|
||||
LDADD = -lqsecmn
|
||||
|
||||
xma_SOURCES = xma.c
|
||||
chr_SOURCES = chr.c
|
||||
str_SOURCES = str.c
|
||||
sll_SOURCES = sll.c
|
||||
|
@ -34,9 +34,10 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
bin_PROGRAMS = chr$(EXEEXT) str$(EXEEXT) sll$(EXEEXT) lda$(EXEEXT) \
|
||||
htb$(EXEEXT) rbt$(EXEEXT) fio$(EXEEXT) pio$(EXEEXT) \
|
||||
sio$(EXEEXT) time$(EXEEXT) main$(EXEEXT) rex01$(EXEEXT)
|
||||
bin_PROGRAMS = xma$(EXEEXT) chr$(EXEEXT) str$(EXEEXT) sll$(EXEEXT) \
|
||||
lda$(EXEEXT) htb$(EXEEXT) rbt$(EXEEXT) fio$(EXEEXT) \
|
||||
pio$(EXEEXT) sio$(EXEEXT) time$(EXEEXT) main$(EXEEXT) \
|
||||
rex01$(EXEEXT)
|
||||
subdir = samples/cmn
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
@ -101,6 +102,10 @@ am_time_OBJECTS = time.$(OBJEXT)
|
||||
time_OBJECTS = $(am_time_OBJECTS)
|
||||
time_LDADD = $(LDADD)
|
||||
time_DEPENDENCIES =
|
||||
am_xma_OBJECTS = xma.$(OBJEXT)
|
||||
xma_OBJECTS = $(am_xma_OBJECTS)
|
||||
xma_LDADD = $(LDADD)
|
||||
xma_DEPENDENCIES =
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include/qse
|
||||
depcomp = $(SHELL) $(top_srcdir)/ac/au/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
@ -116,11 +121,12 @@ LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(chr_SOURCES) $(fio_SOURCES) $(htb_SOURCES) $(lda_SOURCES) \
|
||||
$(main_SOURCES) $(pio_SOURCES) $(rbt_SOURCES) $(rex01_SOURCES) \
|
||||
$(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) $(time_SOURCES)
|
||||
$(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) $(time_SOURCES) \
|
||||
$(xma_SOURCES)
|
||||
DIST_SOURCES = $(chr_SOURCES) $(fio_SOURCES) $(htb_SOURCES) \
|
||||
$(lda_SOURCES) $(main_SOURCES) $(pio_SOURCES) $(rbt_SOURCES) \
|
||||
$(rex01_SOURCES) $(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) \
|
||||
$(time_SOURCES)
|
||||
$(time_SOURCES) $(xma_SOURCES)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
@ -265,6 +271,7 @@ top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
AM_CPPFLAGS = -I$(top_srcdir)/include -DNDEBUG
|
||||
LDADD = -lqsecmn
|
||||
xma_SOURCES = xma.c
|
||||
chr_SOURCES = chr.c
|
||||
str_SOURCES = str.c
|
||||
sll_SOURCES = sll.c
|
||||
@ -390,6 +397,9 @@ str$(EXEEXT): $(str_OBJECTS) $(str_DEPENDENCIES)
|
||||
time$(EXEEXT): $(time_OBJECTS) $(time_DEPENDENCIES)
|
||||
@rm -f time$(EXEEXT)
|
||||
$(LINK) $(time_OBJECTS) $(time_LDADD) $(LIBS)
|
||||
xma$(EXEEXT): $(xma_OBJECTS) $(xma_DEPENDENCIES)
|
||||
@rm -f xma$(EXEEXT)
|
||||
$(LINK) $(xma_OBJECTS) $(xma_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@ -409,6 +419,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sll.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xma.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
|
74
qse/samples/cmn/xma.c
Normal file
74
qse/samples/cmn/xma.c
Normal file
@ -0,0 +1,74 @@
|
||||
#include <qse/cmn/xma.h>
|
||||
#include <qse/cmn/stdio.h>
|
||||
|
||||
int main ()
|
||||
{
|
||||
int i;
|
||||
void* ptr[100];
|
||||
void* x;
|
||||
|
||||
qse_xma_t* xma = qse_xma_open (QSE_NULL, 0, 100000L);
|
||||
if (xma == QSE_NULL)
|
||||
{
|
||||
qse_printf (QSE_T("cannot open xma\n"));
|
||||
return -1;
|
||||
}
|
||||
|
||||
ptr[0] = qse_xma_alloc (xma, 5000);
|
||||
ptr[1] = qse_xma_alloc (xma, 1000);
|
||||
ptr[2] = qse_xma_alloc (xma, 3000);
|
||||
ptr[3] = qse_xma_alloc (xma, 1000);
|
||||
qse_xma_dump (xma);
|
||||
qse_xma_free (xma, ptr[0]);
|
||||
qse_xma_free (xma, ptr[2]);
|
||||
//qse_xma_free (xma, ptr[3]);
|
||||
|
||||
qse_xma_dump (xma);
|
||||
qse_printf (QSE_T("===============================\n"));
|
||||
qse_xma_realloc (xma, ptr[1], 500);
|
||||
qse_xma_dump (xma);
|
||||
|
||||
#if 0
|
||||
for (i = 0; i < 100; i++)
|
||||
{
|
||||
int sz = (i + 1) * 10;
|
||||
/*int sz = 10240;*/
|
||||
ptr[i] = qse_xma_alloc (xma, sz);
|
||||
if (ptr[i] == QSE_NULL)
|
||||
{
|
||||
qse_printf (QSE_T("failed to alloc %d\n"), sz);
|
||||
break;
|
||||
}
|
||||
qse_printf (QSE_T("%d %p\n"), sz, ptr[i]);
|
||||
}
|
||||
|
||||
for (--i; i > 0; i-= 3)
|
||||
{
|
||||
if (i >= 0) qse_xma_free (xma, ptr[i]);
|
||||
}
|
||||
|
||||
/*
|
||||
qse_xma_free (xma, ptr[0]);
|
||||
qse_xma_free (xma, ptr[1]);
|
||||
qse_xma_free (xma, ptr[2]);
|
||||
*/
|
||||
|
||||
{
|
||||
void* x, * y;
|
||||
|
||||
qse_printf (QSE_T("%p\n"), qse_xma_alloc (xma, 5000));
|
||||
qse_printf (QSE_T("%p\n"), qse_xma_alloc (xma, 1000));
|
||||
qse_printf (QSE_T("%p\n"), (x = qse_xma_alloc (xma, 10)));
|
||||
qse_printf (QSE_T("%p\n"), (y = qse_xma_alloc (xma, 40)));
|
||||
|
||||
if (x) qse_xma_free (xma, x);
|
||||
if (y) qse_xma_free (xma, y);
|
||||
qse_printf (QSE_T("%p\n"), (x = qse_xma_alloc (xma, 10)));
|
||||
qse_printf (QSE_T("%p\n"), (y = qse_xma_alloc (xma, 40)));
|
||||
}
|
||||
qse_xma_dump (xma);
|
||||
#endif
|
||||
|
||||
qse_xma_close (xma);
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user