In some cases a inlined return of just a byte produce unnecessary treatment of
the high byte, like it should fulfill the ABI calling convention.

The problem with the unoptimized inlined returs seams (after some trials) to
raise (long) after constant assignment in combination with other facts.

The example is compiled with gcc/avr/3.4.5, gnu99 and -Os, but the same effects
are visible in combinations with gnu++98 and -O3.

To show the difference between the oldstyle #define-macro and a inline function
which should  be 'as fast as a macro' I feed the .c-source instead of the
.i-file.


-- 
           Summary: inlined return of a byte partial unoptimized
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: familie dot glaser at web dot de
  GCC host triplet: WIN
GCC target triplet: AVR


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

Reply via email to