This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

small_enum flag?

Hi,

Has anyone tried the --small_enum flag with DSPLink and DSPBIOS?  According to the compiler documentation, in order to use --small_enum all the application libraries need to use the same flag.  My libraries include:

- RTS - this is easy to recompile from C6000CGT7.2.3/lib/rtssrc.zip

- DSPLink - easy to recompile from source

- DSP/BIOS?  Is there a pre-built DSPBIOS with the --small_enum flag somewhere?

Thanks,

Will

P.S. If it matters I'm using CGT 7.2.3, DSPLink 1.65.00.03, and DSPBIOS 5.41.03.17.

 

  • I might not be understanding you completely, but I don't think you realize that any image/out-file/executable contains the full BIOS operating system.  Just adding the compiler flag when you compile the DSP image should achieve the desired effect.

     

    Sorry if I misinterpreted your question

  • Hi Tim,

    I'm not sure I understand.  DSPBIOS is provided as a library with no source code.  Adding --small_enum to the linker for a library has no effect because the code has already been compiled.  According to the compiler documentation --small_enum must be used for source code.

    Is using --small_enum and DSPBIOS a supported configuration?

    Thanks,

    Will

     

  • A compiler expert is stepping in on a BIOS thread, which is a bit unusual, but here goes ...

    Will Lentz said:
    Is using --small_enum and DSPBIOS a supported configuration?

    No.  Allow me to explain.

    We compiler folks made a mistake when we released the compiler with the --small_enums option.  The problem with --small_enums is that it causes the very object file incompatibility problems you are experiencing right now.  If some awesome benefit were to come with --small_enums, it might be worth all that trouble.  But the benefits of --small_enums are not all that remarkable.  Certainly not remarkable enough to make up for all the compatibility problems.

    So, the --small_enums option should have never been released.  Exactly how it got out anyway is being investigated.

    Future releases of the C6000 compiler will support --small_enums, but silently.  The option will not appear in any documentation, help summaries, etc.

    We support --small_enums only in systems where it is possible to rebuild all of the code from source.  Unfortunately, such systems are not common in practice.

    I know you asked about --small_enums in other forum threads.  I will correct the record there as well.

    I apologize for the inconvenience.

    Thanks and regards,

    -George

  • Thank you for the detailed explanation.  That makes sense.

    Thanks,

    Will