EmbeddedRelated.com
Forums
Memfault Beyond the Launch

GNUARM supports for CortexM3,Thumb2 Instruction

Started by prab...@yahoo.co.in March 12, 2010
hi all,
Currently i am using GNUARM4.1.1 for ARM7TDMI lpc23xx.I am going to move to lpc17xx.(CortexM3).Which version of GNUARM i have to use??Can i use GNUARM4.1.1??I couldn't get detail information from GNUARM document.

Thanks,

An Engineer's Guide to the LPC2100 Series

--- In l..., prabuisin@... wrote:
>
> hi all,
> Currently i am using GNUARM4.1.1 for ARM7TDMI lpc23xx.I am going to move to lpc17xx.(CortexM3).Which version of GNUARM i have to use??Can i use GNUARM4.1.1??I couldn't get detail information from GNUARM document.
>
> Thanks,
>

One way to find out is the read the GCC manuals for the various versions. I didn't do this...

As of version 4.4.1 (the document version I have stored locally), the compiler will generate either Thumb1 or Thumb2 depending on -mcpu= and -march= options. So sayeth page 147 of the document (page 159 of the pdf).

So, grab the GCC document for your version and check it out.

The current version of Rowley CrossWorks is using GCC 4.4.3 and I know that Thumb2 works with that because I have been messing around with an STM32F103 which is based on the Cortex M3

http://www.st.com/mcu/inchtml-pages-stm32.html

Richard

Thanks for your update.. In following link,I couldn't find version 4.4.1.
http://www.gnuarm.org/files.html

FYI:I am using GNUARM with Eclipse/cygwin.

Thanks,
Prabu

________________________________
From: rtstofer
To: l...
Sent: Fri, 12 March, 2010 11:17:09 PM
Subject: [lpc2000] Re: GNUARM supports for CortexM3,Thumb2 Instruction

--- In lpc2000@yahoogroups .com, prabuisin@.. . wrote:
>
> hi all,
> Currently i am using GNUARM4.1.1 for ARM7TDMI lpc23xx.I am going to move to lpc17xx.(CortexM3) .Which version of GNUARM i have to use??Can i use GNUARM4.1.1? ?I couldn't get detail information from GNUARM document.
>
> Thanks,
>

One way to find out is the read the GCC manuals for the various versions. I didn't do this...

As of version 4.4.1 (the document version I have stored locally), the compiler will generate either Thumb1 or Thumb2 depending on -mcpu= and -march= options. So sayeth page 147 of the document (page 159 of the pdf).

So, grab the GCC document for your version and check it out.

The current version of Rowley CrossWorks is using GCC 4.4.3 and I know that Thumb2 works with that because I have been messing around with an STM32F103 which is based on the Cortex M3

http://www.st. com/mcu/inchtml- pages-stm32. html

Richard

Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/
please provide link for getting GCC 4.4.1 setup file?? or we have to do build???

________________________________
From: pra bu
To: l...
Sent: Sat, 13 March, 2010 6:27:13 PM
Subject: Re: [lpc2000] Re: GNUARM supports for CortexM3,Thumb2 Instruction

Thanks for your update.. In following link,I couldn't find version 4.4.1.
http://www.gnuarm. org/files. html

FYI:I am using GNUARM with Eclipse/cygwin.

Thanks,
Prabu

________________________________
From: rtstofer
To: lpc2000@yahoogroups .com
Sent: Fri, 12 March, 2010 11:17:09 PM
Subject: [lpc2000] Re: GNUARM supports for CortexM3,Thumb2 Instruction

--- In lpc2000@yahoogroups .com, prabuisin@.. . wrote:
>
> hi all,
> Currently i am using GNUARM4.1.1 for ARM7TDMI lpc23xx.I am going to move to lpc17xx.(CortexM3) .Which version of GNUARM i have to use??Can i use GNUARM4.1.1? ?I couldn't get detail information from GNUARM document.
>
> Thanks,
>

One way to find out is the read the GCC manuals for the various versions. I didn't do this...

As of version 4.4.1 (the document version I have stored locally), the compiler will generate either Thumb1 or Thumb2 depending on -mcpu= and -march= options. So sayeth page 147 of the document (page 159 of the pdf).

So, grab the GCC document for your version and check it out.

The current version of Rowley CrossWorks is using GCC 4.4.3 and I know that Thumb2 works with that because I have been messing around with an STM32F103 which is based on the Cortex M3

http://www.st. com/mcu/inchtml- pages-stm32. html

Richard
________________________________
Your Mail works best with the New Yahoo Optimized IE8. Get it NOW!.

Your Mail works best with the New Yahoo Optimized IE8. Get it NOW! http://downloads.yahoo.com/in/internetexplorer/
--- In l..., pra bu wrote:
>
> Thanks for your update.. In following link,I couldn't find version 4.4.1.
> http://www.gnuarm.org/files.html
>
> FYI:I am using GNUARM with Eclipse/cygwin.
>
> Thanks,
> Prabu

The manual for version 4.3.4, which is available at GNU, also indicates that it generates Thumb or Thumb2 depending on the same options.

The manual for version 4.1.2 does not indicate that it supports Thumb2

So, somewhere in the middle which is convenient because the sources at gnuarm.org are for 4.3.2

Since you are using Windows, you could skip cygwin and just use YAGARTO which includes Eclipse and uses GCC 4.4.2.

Richard

On 13/03/2010 14:44, rtstofer wrote:
>
>
> --- In l..., pra bu wrote:
>>
>> Thanks for your update.. In following link,I couldn't find version 4.4.1.
>> http://www.gnuarm.org/files.html
>>
>> FYI:I am using GNUARM with Eclipse/cygwin.
>>
>> Thanks,
>> Prabu
>
> The manual for version 4.3.4, which is available at GNU, also indicates that it generates Thumb or Thumb2 depending on the same options.
>
> The manual for version 4.1.2 does not indicate that it supports Thumb2
>
> So, somewhere in the middle which is convenient because the sources at gnuarm.org are for 4.3.2
>
> Since you are using Windows, you could skip cygwin and just use YAGARTO which includes Eclipse and uses GCC 4.4.2.
>
> Richard
...or use a pre-built lite version of the CodeSourcery distribution.

Regards,
Richard.

+ http://www.FreeRTOS.org
Designed for Microcontrollers. More than 7000 downloads per month.

+ http://www.SafeRTOS.com
Certified by T as meeting the requirements for safety related systems.

>> GCC 4.4.2.

I don't know when Cortex M3 support was actually added but I have used CodeSourcery gcc version 4.2.3 (Sourcery G++ Lite 2008q1-126) for two years with Luminary and now LPC17XX.

Just set "-mcpu=cortex-m3".

Regards

Mark

http://www.uTasker.com

> ...or use a pre-built lite version of the CodeSourcery distribution.
>
> Regards,
> Richard.

I just installed CodeSourcery 2009Q3 with Windows (it uses GCC 4.4.1) and it works fine with the LP1343 (M3) ... just install it, run your make file from a standard windows command prompt and it should work fine (or at least it does for me). I haven't had time to test out the M0 yet (LPC1114).

Kevin.

> > ...or use a pre-built lite version of the CodeSourcery distribution.

I just tested CodeSourcery G++ Lite 2009Q3 with an M0 (LPC1114) and it seems to work fine. The GCC documentation doesn't seem to list cortex-m0 for -mcpu, but it appears to work anyway (http://gcc.gnu.org/onlinedocs/gcc-4.4.3/gcc/ARM-Options.html#ARM-Options)

Kevin.

On 13/03/2010 18:57, kevin_townsend2 wrote:
>>> ...or use a pre-built lite version of the CodeSourcery distribution.
>
> I just tested CodeSourcery G++ Lite 2009Q3 with an M0 (LPC1114) and it seems to work fine. The GCC documentation doesn't seem to list cortex-m0 for -mcpu, but it appears to work anyway (http://gcc.gnu.org/onlinedocs/gcc-4.4.3/gcc/ARM-Options.html#ARM-Options)
>
> Kevin.
CodeSourcery and the official maintainers of GCC for ARM, and are
usually ahead of the main GCC repository.
Regards,
Richard.

+ http://www.FreeRTOS.org
Designed for Microcontrollers. More than 7000 downloads per month.

+ http://www.SafeRTOS.com
Certified by T as meeting the requirements for safety related systems.


Memfault Beyond the Launch