Author: mcayland Date: Sun Mar 14 22:02:58 2010 New Revision: 699 URL: http://tracker.coreboot.org/trac/openbios/changeset/699
Log: Only one file remains - asm.m4. I have absolutely no idea what this file is supposed to do (since it doesn't seem to be called) so I'll move in into include/libopenbios for the time being. Anyone know what this file is used for?
Signed-off-by: Mark Cave-Ayland mark.cave-ayland@siriusit.co.uk
Added: trunk/openbios-devel/include/libopenbios/asm.m4 (props changed) - copied unchanged from r698, trunk/openbios-devel/include/openbios/asm.m4 Deleted: trunk/openbios-devel/include/openbios/
Copied: trunk/openbios-devel/include/libopenbios/asm.m4 (from r698, trunk/openbios-devel/include/openbios/asm.m4) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/openbios-devel/include/libopenbios/asm.m4 Sun Mar 14 22:02:58 2010 (r699, copy of r698, trunk/openbios-devel/include/openbios/asm.m4) @@ -0,0 +1,137 @@ +/* -*- asm -*- + * Creation Date: <2001/12/30 20:08:53 samuel> + * Time-stamp: <2002/01/14 00:48:09 samuel> + * + * <asm.m4> + * + * m4 initialization (m4 is used as an assembly preprocessor) + * + * Copyright (C) 2001, 2002 Samuel Rydh (samuel@ibrium.se) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation + * + */ + +/* This end-of-quote matches the start-of-quote in mol_config.h */ +]]]]] +changequote([,]) + +dnl m4 macros to avoid in header files (we can not rename these) +dnl ========================================================== +dnl shift, eval, expr, decr, incr, ifelse, popdef, pushdef + + +dnl ************************************************************** +dnl * Rename to reduce namespace conflicts +dnl ************************************************************** + +dnl *** Changing the name of built-in macros using defn does not always work *** + +undefine([changecom]) +undefine([changequote]) +dnl undefine([decr]) +undefine([defn]) +undefine([divert]) +undefine([divnum]) +undefine([errprint]) +dnl undefine([eval]) +dnl undefine([expr]) +undefine([file]) +undefine([format]) +undefine([len]) +undefine([line]) +dnl undefine([ifelse]) +dnl undefine([incr]) +undefine([indir]) +undefine([include]) +undefine([index]) +undefine([maketemp]) +undefine([paste]) +undefine([patsubst]) +dnl undefine([popdef]) +dnl undefine([pushdef]) +undefine([regexp]) +dnl undefine([shift]) +undefine([sinclude]) +undefine([spaste]) +undefine([substr]) +undefine([syscmd]) +undefine([sysval]) +undefine([translit]) +undefine([traceoff]) +undefine([traceon]) +undefine([undivert]) +undefine([unix]) +dnl undefine([__gnu__]) +dnl undefine([__unix__]) + +dnl Uncomment to list m4 definitions +dnl dumpdef m4exit + +/************************************************************************/ +/* M4 Macros */ +/************************************************************************/ + +/* WARNING - M4 BUG IN MacOS X (10.1.2): + * eval() in MacOS X (10.1.2) handles '&' as '&&' and '|' as '||'. + */ + +/* FORLOOP(var, from, to, [body var...]) */ +define([mFORLOOP], [pushdef([$1], [$2])_mFORLOOP([$1], [$2], [$3], [$4])popdef([$1])]) +define([_mFORLOOP], [$4[]ifelse($1, [$3], , + [define([$1], incr($1))_mFORLOOP([$1], [$2], [$3], [$4])])]) + +define([mFIRST],[$1]) +define([mCONCAT_C],[ [$@] ]) + +/* FOREACH(var, [item1, ...], [body var ...]) */ +define([mFOREACH],[pushdef([$1],mFIRST($2))_mFOREACH([$1],[shift($2)],[$3])popdef([$1])]) +define([_mFOREACH],[$3] [ifelse(mFIRST($2),,,[define([$1],mFIRST($2)) _mFOREACH([$1],[shift($2)],[$3])])]) + + +/******************** Nice macro definitions **************************/ + +/* MACRO(name, [param1, ...], [body _param1 ...]) */ +#ifdef __linux__ +define([MACRO], [ + .macro [$1] $2 + mFOREACH([i],[$2],[ pushdef(_[]i,\i) ]) + $3 + .endm + mFOREACH([i],[$2],[ popdef(_[]i) ]) +]) +#else +define([MACRO], [ + .macro [$1] + pushdef([_n],0) + mFOREACH([i],[$2],[ pushdef(_[]i,[$[]]_n) define([_n],incr(_n)) ]) + $3 + .endmacro + mFOREACH([i],[$2],[ popdef(_[]i) ]) + popdef([_n]) +]) +#endif +define([MACRO_0], [MACRO([$1],[_dummy_param_],[$2])]) + + +/* mDEFINE(name, [param1, ...], [body _param1 ...]) */ +define([mDEFINE], [ + pushdef([_n],1) + mFOREACH([i],[$2],[ pushdef(_[]i,[$[]]_n) define([_n],incr(_n)) ]) + define([$1], mCONCAT_C($3) ) + mFOREACH([i],[$2],[ popdef(_[]i) ]) + popdef([_n]) +]) + + +/* rLABEL(label): b label_b ; b label_f */ +define(rLABEL,[dnl +ifdef([$1]_curnum,,[$1[]f:])dnl + define([_tmp_curnum],ifdef($1[]_curnum, [eval($1_curnum+1)], 1)) dnl + define([$1]_curnum,_tmp_curnum)dnl + define([$1]f,$1_[]eval($1_curnum[]+1) )dnl + define([$1]b,$1_[]$1_curnum[] ) +$1[]_[]$1_curnum[]dnl +])
On 3/14/10, repository service svn@openbios.org wrote:
Author: mcayland Date: Sun Mar 14 22:02:58 2010 New Revision: 699 URL: http://tracker.coreboot.org/trac/openbios/changeset/699
Log: Only one file remains - asm.m4. I have absolutely no idea what this file is supposed to do (since it doesn't seem to be called) so I'll move in into include/libopenbios for the time being. Anyone know what this file is used for?
It was used for some PPC asm wizardry, but I converted the code used by qemu target to plain asm.
Blue Swirl wrote:
It was used for some PPC asm wizardry, but I converted the code used by qemu target to plain asm.
Oh cool. Would you like to go ahead and remove it? If someone still really wants this file, they can always pull a copy out of legacy SVN.
ATB,
Mark.