On Tue, Apr 5, 2016 at 2:45 AM, Umesh Kalappa <umesh.kalap...@gmail.com> wrote: > I need to ,make the changes only to the function args(varargs),hence > making the changes in TARGET_PROMOTE_FUNCTION_MODE will do ?.
If TARGET_PROMOTE_FUNCTION_MODE disagrees with PROMOTE_MODE, it is possible that the middle end may generate incorrect RTL. This was seen with the arm target when it was using different sign extension for args and locals. It may or may not be a problem for SImode extension versus DImode extension. If you run into optimizer problems, you may need to change PROMOTE_MODE also to solve them. > one more question ,i do have defined the TARGET_PROMOTE_FUNCTION_MODE > (arm.c) and cross compilling for aarch64 ,but still gcc calls > default_promote_function_node i.e Add it to aarch64.c instead of arm.c. arm.c is for 32-bit arm code. aarch64.c is for 64-bit arm code. Jim