Date: Sat, 29 Jan 2000 05:06:33 -0800 (PST) From: "David E. O'Brien" <obrien@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/contrib/gcc/config/i386 freebsd.h i386.c Message-ID: <200001291306.FAA04932@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
obrien 2000/01/29 05:06:33 PST
Modified files:
contrib/gcc/config/i386 freebsd.h i386.c
Log:
Fix our -mprofiler-epilogue code.
"The problem is that egcs/gcc-2.95's reorganisation of the prologue and
epilogue code to use rtl instead of output_asm_insn() completely broke our
hooks. rtl is emitted in a different order, only after optimisation, while
output_asm_insn() is emitted immediately. rtl is presumably used so that
the prologue and epilogue can be optimised.
I couldn't find any good examples to copy. gcc's own
FUNCTION_BLOCK_PROFILER still uses output_asm_insn() and seems to be
completely broken. One of the XXX comments points to this.
IIRC, the hacks here basically arrange to emit magic label names; then when
the magic names are output, they are transformed into prologue and epilogue
code."
Submitted by: bde
Revision Changes Path
1.34 +63 -24 src/contrib/gcc/config/i386/freebsd.h
1.7 +14 -1 src/contrib/gcc/config/i386/i386.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200001291306.FAA04932>
