This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/13199] New: switch construct / opmisation problems


In some cases, calls to/from switch construct cases require jumps beyond the
range of the thumb branch instruction. In this case, jumps are made using the
thumb bl instruction, which may be corrupted. The attached example has some
local variables, one of which is held in the lr register and is subsequently
corrupted by both default cases and the return from all other cases, which use a
bl instruction.

-- 
           Summary: switch construct / opmisation problems
           Product: gcc
           Version: 3.3.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: andy dot parker at oxsemi dot com
                CC: gcc-bugs at gcc dot gnu dot org
  GCC host triplet: i686-pc-linux
GCC target triplet: arm-elf-g++


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]