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.

TI ARM compiler 5.2.5 packing

Hello,


I am attempting to port the FREERTOS tcp library to onto a ti tm4c1294 launchpad. I am using the in circuit debugger as well as compiler version 5.2.5 on Code composer version 6.1.1.00022.


I am attempting to follow the FREERTOS porting guide here:

http://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_TCP/Embedded_Compiler_Porting.html

  • It looks like you clicked on post too soon.  I don't see a question to answer.  -George

  • Hi George,


    Sorry about that. I had a heck of a time getting that hyperlink to not embed the entire website. Looks like it didn't quite work. Additionally on my original message:

    Following the FREERTOS porting guide (above), and the ARM compiler user's guide I have changed my two files to the following:

    pack_struct_start.h

    #pragma PACK (1)

    and my pack_struct_end.h with

    ;

    Seems straightforward, however, I am getting compiler warnings declaring my #pragma PACK (1) is an unrecognized #pragma

    I am kind of at a loss here. What am I missing?


    Thanks!

  • You need to read about two things in the ARM compiler manual.

    First, learn how to use the option --gen_acp_raw to debug preprocessor problems.  You can see your source code before and after preprocessing, to work out what went wrong.

    Second, you need to learn the specifics of how to pack structures with the TI ARM compiler.  For that please see the section titled The PACK Pragma.

    Thanks and regards,

    -George

  • Hi George,

    I am more concerned about the warnings the compiler is throwing.

    I have read the ARM compiler manual and I feel like I am using the #pragma PACK(1) function call correctly. I do not understand why the warning is being thrown.
  • Please send in one source file which sees the diagnostic.  I want to build and see the diagnostic for myself.  Please preprocess the source file and submit that.  Also show the compiler version and all the build options exactly as the compiler sees them.

    Thanks and regards,

    -George

  • After reviewing closer what the FREERTOS folks are doing with these header files, I changed to #pragma pack(push, 1) and #pragma pop.

    However, here is where things get really annoying. The documentation clearly calls out all caps on those pragma calls. However, referring to this previous post from someone else:

    e2e.ti.com/.../351562

    Changing to lowercase got rid of the warnings. Well, that worked on my end as well. From nearly two years ago. Disappointing this hasn't been fixed.
  • I apologize for the inconvenience.  I filed SDSCM00052878 in the SDOWP system to have this addressed.  You are welcome to follow it with the SDOWP link below in my signature.

    Thanks and regards,

    -George