On 05/18/2015 02:05 AM, Umesh Kalappa wrote: > Getting a bus/hard error for the below case ,make sense since ldm/stm > expects the address to be word aligned .
> --with-pkgversion='Cisco GCC c4.7.0-p1' --with-cisco-patch-level=1 The FSF doesn't support gcc-4.7.0 anymore. Generally, we only support the last two versions, which is 4.9 and 5.1. We also don't support vendor compilers. So you will have to reproduce in an FSF GCC 4.9 or later tree if you want to get anyone here interested. It appears that this is already fixed in gcc-4.9 though. The Cisco compiler is a MontaVista compiler with patches. You could try reporting this to MontaVista. Or you can try to track down the problem yourself. You can use bisection to find the patch that fixed it. Checkout a copy of the FSF gcc tree halfway between gcc-4.7 and gcc-4.9, and check to see if it has the bug. That narrows the search space by half. Then repeat on the remaining half until you have reduced it down to a few days. Then you can check ChangeLog entries for a likely patch to the ARM backend. Or you can continue the bisection until you have it down to one patch. You can then backport the patch to your gcc sources and/or point MontaVista at it. This bisection process can be scripted. You can find an example in the gcc contrib/reghunt directory. I don't have experience using this script though, as I like to do it by hand. If you have a sufficient understanding of gcc, you may be able to find the patch simply by looking at what gcc-4.9 is doing differently than gcc-4.7, and mapping that back to a ChangeLog entry and a patch. Jim