From d500cbb2064e4beb40a760f62b53a3f75f2a87fb Mon Sep 17 00:00:00 2001 From: Luke Leighton Date: Wed, 31 May 2000 05:39:54 +0000 Subject: messing about. (This used to be commit 9c6f2d75d848a280f25f2377130953ecd824b7b1) --- source3/aparser/parsefn.awk | 70 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 63 insertions(+), 7 deletions(-) (limited to 'source3/aparser/parsefn.awk') diff --git a/source3/aparser/parsefn.awk b/source3/aparser/parsefn.awk index f4fb65dd07..2bebd765e6 100644 --- a/source3/aparser/parsefn.awk +++ b/source3/aparser/parsefn.awk @@ -47,6 +47,9 @@ function parse_array(f, v, elnum, flags, function parse_element(f, v, elnum, flags, LOCAL, type, elem) { + if (elements[elnum,"nowire"] != "") { + return; + } type = elements[elnum, "type"]; if (substr(type,1,1) == ".") return; elem = elements[elnum, "elem"]; @@ -130,6 +133,40 @@ function parse_pointer(f, v, elnum, flags, print_template(f, "prs_pointer.tpl", v); } +function parse_scalar_fn(m, v, elnum, + LOCAL, elem, type) +{ + elem = elements[elnum, "elem"]; + type = elements[elnum, "type"] + xprintf(m, "%s %s", type, elem_name(v, elem)); + if (type == "union") { + } else if (elements[elnum, "array_len"]!="") { + } else { + } +} + +function parse_pointer_fn(f, v, elnum, flags, + LOCAL, elem) +{ + elem = elements[elnum, "elem"]; + v["ELEM"] = elem_name(v, elem); + v["FLAGS"] = flags; + xprintf(m, "%s\n", v["ELEM"]); +} + +function parse_scalars_fn(m, v, elnum, flags) +{ + if (elements[elnum, "type"] == ".align2") { + } + else if (elements[elnum, "type"] == ".align4") { + } + else if (elements[elnum, "ptr"] == "1") { + parse_pointer_fn(m, v, elnum, flags); + } else { + parse_scalar_fn(m, v, elnum, flags); + } +} + function parse_scalars(f, v, elnum, flags) { if (elements[elnum, "type"] == ".align2") { @@ -163,15 +200,20 @@ function parse_buffers(f, v, elnum, flags, } } -function struct_parser(f, v, struct_num, - LOCAL, i, n1) +function struct_parser(f, m, v, struct_num, + LOCAL, i, n1, f1, num_elems) { + f1 = -1; + num_elems = structs[struct_num, "num_elems"]; v["STRUCTNAME"] = structs[struct_num, "name"]; v["FUNCNAME"] = "io_" v["STRUCTNAME"]; print_template(f, "fn_start.tpl", v); - for (n1=0;n1