[Bug java/17187] New: Call to java.lang.Object constructor is redundant

mckinlay at redhat dot com gcc-bugzilla@gcc.gnu.org
Wed Aug 25 15:45:00 GMT 2004


The constructor for java.lang.Object does nothing. Its probably a reasonable
assumption that it will always do nothing, so, we should change the compiler to
not generate calls to it when generating native code. This would save 1 call for
every "new" operation, and also improve the number of inlining opportunities
available to the compiler, as many constructor calls could now be fully inlined.

One way to do this might be to extend the java "builtins" mechanism to allow us
to  turn other well known calls, not just Math.* calls, into inlined trees. If
we see a java.lang.Object() call, check_for_builtin() would just return an empty
statement tree.

-- 
           Summary: Call to java.lang.Object constructor is redundant
           Product: gcc
           Version: 3.5.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: enhancement
          Priority: P2
         Component: java
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mckinlay at redhat dot com
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17187



More information about the Gcc-bugs mailing list