This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Trailing space in opcodes/ generated file
- From: Alan Modra <amodra at gmail dot com>
- To: binutils at sourceware dot org
- Date: Mon, 17 Aug 2015 12:05:54 +0930
- Subject: Trailing space in opcodes/ generated file
- Authentication-results: sourceware.org; auth=none
HJ recently removed trailing space in binutils files, but unfortunately
they return when regenerating files in opcodes. This fixes the regen
process.
* cgen.sh: Trim trailing space from cgen output.
* ia64-gen.c (print_dependency_table): Don't generate trailing space.
(print_dis_table): Likewise.
* opc2c.c (dump_lines): Likewise.
(orig_filename): Warning fix.
* ia64-asmtab.c: Regenerate.
diff --git a/opcodes/cgen.sh b/opcodes/cgen.sh
index 283649f..aa8cda2 100644
--- a/opcodes/cgen.sh
+++ b/opcodes/cgen.sh
@@ -113,41 +113,48 @@ opcodes)
${extrafile_args}
# Customise generated files for the particular architecture.
- sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" < ${tmp}-desc.h1 > ${tmp}-desc.h
+ sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+ -e 's/[ ][ ]*$//' < ${tmp}-desc.h1 > ${tmp}-desc.h
${rootdir}/move-if-change ${tmp}-desc.h ${srcdir}/${prefix}-desc.h
sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" < ${tmp}-desc.c1 > ${tmp}-desc.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' \
+ < ${tmp}-desc.c1 > ${tmp}-desc.c
${rootdir}/move-if-change ${tmp}-desc.c ${srcdir}/${prefix}-desc.c
- sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" < ${tmp}-opc.h1 > ${tmp}-opc.h
+ sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
+ -e 's/[ ][ ]*$//' < ${tmp}-opc.h1 > ${tmp}-opc.h
${rootdir}/move-if-change ${tmp}-opc.h ${srcdir}/${prefix}-opc.h
sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" < ${tmp}-opc.c1 > ${tmp}-opc.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' \
+ < ${tmp}-opc.c1 > ${tmp}-opc.c
${rootdir}/move-if-change ${tmp}-opc.c ${srcdir}/${prefix}-opc.c
case $extrafiles in
*opinst*)
sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" < ${tmp}-opinst.c1 >${tmp}-opinst.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' \
+ < ${tmp}-opinst.c1 >${tmp}-opinst.c
${rootdir}/move-if-change ${tmp}-opinst.c ${srcdir}/${prefix}-opinst.c
;;
esac
cat ${srcdir}/cgen-ibld.in ${tmp}-ibld.in1 | \
sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" > ${tmp}-ibld.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' > ${tmp}-ibld.c
${rootdir}/move-if-change ${tmp}-ibld.c ${srcdir}/${prefix}-ibld.c
sed -e "/ -- assembler routines/ r ${tmp}-asm.in1" ${srcdir}/cgen-asm.in \
| sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" > ${tmp}-asm.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' \
+ > ${tmp}-asm.c
${rootdir}/move-if-change ${tmp}-asm.c ${srcdir}/${prefix}-asm.c
sed -e "/ -- disassembler routines/ r ${tmp}-dis.in1" ${srcdir}/cgen-dis.in \
| sed -e "s/@ARCH@/${ARCH}/g" -e "s/@arch@/${arch}/g" \
- -e "s/@prefix@/${prefix}/" > ${tmp}-dis.c
+ -e "s/@prefix@/${prefix}/" -e 's/[ ][ ]*$//' \
+ > ${tmp}-dis.c
${rootdir}/move-if-change ${tmp}-dis.c ${srcdir}/${prefix}-dis.c
# Remove temporary files.
diff --git a/opcodes/ia64-gen.c b/opcodes/ia64-gen.c
index ad8f6d9..2488f4b 100644
--- a/opcodes/ia64-gen.c
+++ b/opcodes/ia64-gen.c
@@ -1610,16 +1610,16 @@ print_dependency_table (void)
/* And dependency lists. */
for (i=0;i < dlistlen;i++)
{
- int len = 2;
- printf ("static const unsigned short dep%d[] = {\n ", i);
+ unsigned int len = (unsigned) -1;
+ printf ("static const unsigned short dep%d[] = {", i);
for (j=0;j < dlists[i]->len; j++)
{
- len += printf ("%d, ", dlists[i]->deps[j]);
- if (len > 75)
+ if (len > 74)
{
- printf("\n ");
- len = 2;
+ printf("\n ");
+ len = 1;
}
+ len += printf (" %d,", dlists[i]->deps[j]);
}
printf ("\n};\n\n");
}
@@ -2124,13 +2124,13 @@ print_dis_table (void)
int x;
struct disent *cent = disinsntable;
- printf ("static const char dis_table[] = {\n");
+ printf ("static const char dis_table[] = {");
for (x = 0; x < insn_list_len; x++)
{
- if ((x > 0) && ((x % 12) == 0))
- printf ("\n");
+ if (x % 12 == 0)
+ printf ("\n ");
- printf ("0x%02x, ", insn_list[x]);
+ printf (" 0x%02x,", insn_list[x]);
}
printf ("\n};\n\n");
diff --git a/opcodes/opc2c.c b/opcodes/opc2c.c
index ce8d70e..6ded918 100644
--- a/opcodes/opc2c.c
+++ b/opcodes/opc2c.c
@@ -121,7 +121,7 @@ int n_varies = 0;
unsigned char cur_bits[MAX_BYTES + 1];
-char * orig_filename;
+const char * orig_filename;
FILE * sim_log = NULL;
#define lprintf if (sim_log) fprintf
@@ -339,7 +339,10 @@ dump_lines (opcode * op, int level, Indirect * ind)
printf ("#line %d \"%s\"\n", op->lineno + 1, orig_filename);
for (i = 0; i < op->nlines; i++)
- printf ("%*s%s", level, "", op->lines[i]);
+ if (op->lines[i][0] == '\n')
+ printf ("%s", op->lines[i]);
+ else
+ printf ("%*s%s", level, "", op->lines[i]);
if (op->comment)
printf ("%*s}\n", level, "");
--
Alan Modra
Australia Development Lab, IBM