Summary: | processor return register saved/restore unnecessarily in leaf function | ||
---|---|---|---|
Product: | gcc | Reporter: | Toshiyasu Morita <tm> |
Component: | target | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | enhancement | CC: | anilp1, gcc-bugs |
Priority: | P2 | Keywords: | missed-optimization |
Version: | 3.4.0 | ||
Target Milestone: | 4.0.0 | ||
Host: | Target: | sh-elf | |
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2003-11-08 21:46:12 |
Description
Toshiyasu Morita
2003-09-16 22:15:56 UTC
This version did not have the store/restore of the return register: ./cc1 --version GNU C version 3.4 20030718 (experimental) (sh4-hardhat-linux) compiled by GNU C version 3.4 20030718 (experimental). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 I can confirm this on the mainline (20031108), looks like sh-linux does do the saving or restoring of the return register for some reason. (In reply to comment #2) > I can confirm this on the mainline (20031108), looks like sh-linux does do the saving or > restoring of the return register for some reason. Hi, Above mentioned bug is solved in gcc 3.5 mainline (snapshot dated 27-03-2004). But this bug is still there in released gcc 3.4. Can anybody tell me which patch will fix this bug in gcc 3.4 ? Regards, Anil Paranjpe Fixed with - http://gcc.gnu.org/ml/gcc-patches/2004-02/msg02248.html http://gcc.gnu.org/ml/gcc-cvs/2004-02/msg01310.html This PR can be closed. -Dhananjay Fixed for 3.5.0. |