On 21 November 2012 03:26, Michael Hope <michael.h...@linaro.org> wrote:
> On 20 November 2012 22:10, Zhenqiang Chen <zhenqiang.c...@linaro.org> wrote:
>> Hi,
>>
>> I try ARM, MIPS, PowerPC and X86 on povray benchmark. No one can
>> shrink-wrap function Ray_In_Bound.
>>
>> Here is:
>> bool Ray_In_Bound (RAY *Ray, OBJECT *Bounding_Object)
>> {
>>   ...
>>   for (Bound = Bounding_Object; Bound != NULL; Bound = Bound->Sibling)
>>   {...}
>>   return (true);
>> }
>> For ARM O2/O3, "Bound" is allocated to "r6" during ira. So there is copy
>>
>> r6 = r1 before
>> testing Bound != NULL
>
> Could you hack the benchmark to make the early exit explicit and see
> if that changes the result?  That lets us know if improving shrink
> wrap is worthwhile.
>
> Something like:
>
>  bool Ray_In_Bound (RAY *Ray, OBJECT *Bounding_Object)
>  {
>   if (Bounding_Object == NULL) return true;

I had tried it. The result is the same with the original one. (The
hack code is optimized)

Thanks!
-Zhenqiang

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to