id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
609	Useful optimisation for set-cost-centre	simonpj	simonmar	"If you compile, for example, drvrun014 with -prof -auto-all, you'll see stuff like
{{{
    (scc ""c"" (dataToTag#)) y
}}}
This generates bad code, because we end up eta-expaning dataToTag, which allocates an extra function closure.  

We think that in general
{{{
   (scc ""c"" e) y  = scc ""c"" (e y)
}}}
to within a small constant factor.  So maybe the simplifier, or `CorePrep`, or both, should do this transformation.
"	task	new	normal	7.6.2	Profiling	None	None			Unknown/Multiple	Unknown/Multiple	None/Unknown	Moderate (less than a day)				
