S32 Design Studio GCC VLE 4.9.4 doesn't support e_stmvmcsrrw opcode

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32 Design Studio GCC VLE 4.9.4 doesn't support e_stmvmcsrrw opcode

Jump to solution
2,992 Views
hli174
Contributor II

Hi All,

I am trying to compile one file with GCC which is from S32DS. but I got an error Error: unrecognized opcode: `e_stmvmcsrrw'. I checked the source of that NXP GCC compiler and found that ppc-opc.c doesn't have this opcode which surprised me. Is there updated version GCC for MPC574XG target? or any suggestions for the work around? Thank you and I appreciate your help!

Labels (1)
1 Solution
2,700 Views
alexanderfedoto
NXP Employee
NXP Employee

Hi Hai,

Since your original issue is about missing instructions that Assembler complaints you'll need to build only assembler/objdump from the latest binutils. All binutils patches are in main line (except GDB patches). No need to build GCC from the scratch.

Regarding GCC patches streaming up I don't think this will happen in near future.

BTW, what is your OS ? Linux or Windows ? Maybe someone had already build the tools and and can share them.

View solution in original post

7 Replies
2,697 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

you can try use this patch:

Alexander Fedotov - Re: VLE load/store multiple instructions  

What is your S32DS Version?  

Jiri 

2,700 Views
hli174
Contributor II

Hi Jiri,

Thanks for your reply , I found that patch and I found the source of the compiler here :https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fwww.nxp.com%2Flgfiles%2Fupdates%2FS32... 

but there is no build script of the compiler in the source package. Just the patches and source tar package. Do you know where can I get the build script or build guideline? Without build script , I have no idea about how to configure each package. 

I am using this version :

S32 Design Studio for Power Architecture

Version: 2.1
Build id: 190624

Thank you!

Hai

0 Kudos
2,700 Views
alexanderfedoto
NXP Employee
NXP Employee

No need to rebuild everything. You can download latest binutils release tarball from sourceware and build with target triplet "powerpc-eabivle"

2,700 Views
hli174
Contributor II

Hi Alex,

Thank you for your reply. I saw 11 patches for binutils from NXP GCC package. Do you think the mainstream already has all changes? another word if I create a GCC from latest releases code will work in MPC574XG?

I searched the community and found this post, PowerPC VLE GCC: Sourcecode? , From Stepan K 's comments, looks like all NXP patches are not in mainstream of GCC toolchain.

Thanks!

0 Kudos
2,701 Views
alexanderfedoto
NXP Employee
NXP Employee

Hi Hai,

Since your original issue is about missing instructions that Assembler complaints you'll need to build only assembler/objdump from the latest binutils. All binutils patches are in main line (except GDB patches). No need to build GCC from the scratch.

Regarding GCC patches streaming up I don't think this will happen in near future.

BTW, what is your OS ? Linux or Windows ? Maybe someone had already build the tools and and can share them.

2,284 Views
HYQ
Contributor II

Hello  Alex,

I also meet the same issue when I compile S32R294 with powerpc-eabivle-4_9, which is from the S32DS installation path.

I saw there some  patches for this issue. But I don't know how to add those  patches to my local powerpc-eabivle-4_9 compiler. How should I do to get a local powerpc-eabivle-4_9 compiler with those patches for this issue?

S32 Design Studio for Power Architecture

Version: 2.1
Build id: 190624

Thank you 

Best regards
hu

0 Kudos
2,700 Views
hli174
Contributor II

Hi Alexander,

Thank you so much for your help, I used your commit to fix this issue sourceware.org Git - binutils-gdb.git/commit . I just add {"e_stmvmcsrrw",       OPVUPRT(6,17,7),OPVUPRT_MASK,   PPCVLE, 0,              {D8, RA0}}, in /opcodes/ppc-opc.c. I realize that you did that commit for the community you used the same avatar :smileyhappy: . I recompiled the gas , now the compilation error is going away. When I got the binary I will test it in real hardware. Thanks again and have a great weekend!

Br,

Hai