Hello,
we try to build coverage info for GCC for our testsuite and upload it to
https://gcc.opensuse.org/gcc-lcov/ every weekend. But since patch
r14-1625-geba3565ce6d766 (Add support for stc and cmc instructions in
i386.md) the generation broke down. However, I don't think there is
something necessarily wrong with that particular commit, at least I
don't see anything suspicious.
I inherited the generating script from Martin Liška and have not really
looked much into it much, but it simply does the following after a fresh
GCC master checkout (I added the --disable-multilib and reduced the
number of languages to reproduce this more quickly):
../src/configure --prefix=/home/mjambor/gcc/mine/inst
--enable-languages=c,c++ --disable-bootstrap --enable-host-shared
--enable-coverage=opt --disable-multilib
make -j64 && make -j64 -k check
find gcc/testsuite/ -name '*.gcda' -exec rm -rvf {} \; # I don't know why
the script does this
lcov -d . --capture --output-file gcc.info
and this last step, since the commit, when processing file
./gcc/insn-attrtab.gcda fails with error:
geninfo: ERROR: mismatched end line for _Z12get_attr_isaP8rtx_insn at
/home/mjambor/gcc/mine/src/gcc/config/i386/i386.md:5776: 5776 -> 8963
(use "geninfo --ignore-errors mismatch ..." to bypass this error)
I tried looking briefly into the perl sources of lcov and geninfo but I
am afraid I don't have the necessary knowledge of the language and the
tool or the time to properly debug this. So I am inclined to simply add
--ignore-errors mismatch to lcov options, which avoids the issue, and be
done with it. Nevertheless, I thought I'd mention this here in case
anyone here has any ideas what can be going wrong.
Thanks,
Martin