Re: Combine pass with reused sources

2013-08-14 Thread amylaar
Quoting "Lu, John" : However, if I modify the function so that one of the factors is reused, long f1(long a, long b, long c) { res0=((long long) a)*((long long) b); res1=((long long) c)*((long long) b); } combine will not fuse the reused sign-extension result to generate th

Combine pass with reused sources

2013-08-12 Thread Lu, John
Hi, I'm working on compiler for an architecture with a multiply instruction that takes two 32-bit factors, sign-extends both factors to 64-bits and then does a 64-bit multiplication and stores the result to a destination register. The combine pass successfully generates the pattern (mulhizi3) f