Questions tagged [armcc]

Questions regarding armcc, C/C++ compiler that is part of proprietary ARM compiler tool-chain, version 5 and below. For questions regarding ARM Compiler 6, use armclang tag instead.

The ARM C compiler is a mature, industrial-strength compiler, based on Codemist Ltd's multi-target, multi-language compiler suite (also known as the Norcroft C compiler).

By default the ARM C compiler compiles ANSI C as defined by American National Standard for Information Systems - Programming Language C, X3J11/90-013, Feb 14, 1990.

The ARM C compiler also has a pcc mode, which accepts the dialect of C used by Berkeley Unix. In this mode the compiler has been used to build a complete ARM-based Unix system (the RISCiX system).

More information about ARMCC at ARM tools website

87 questions
1
vote
1 answer

C Macro utilizing immediate values in embedded arm asm - armcc

The closest threads to my question are these Escaping a # symbol in a #define macro? and How to print a pound / hash via C preprocessor?, but they don't exactly answer my question. More explicitly, the second doesn't seem to work with the armcc…
Soeldner
  • 13
  • 4
1
vote
2 answers

ARM - How to preserve r9 register with armcc

Reading ARM AAPCS (ARM EABI), I've found : The role of register r9 is platform specific. A virtual platform may assign any role to this register and must document this usage. For example, it may designate it as the static base (SB) in a…
1
vote
1 answer

How to use 'armcc' compiler to trace function calls?

I used to use gcc -fdump-rtl-expand and -finstrument-functions to do function call tracing, does armcc has this kind of similar function? For gcc, I use: CFLAGS += -finstrument-functions -fdump-rtl-expand Does armcc have similar compiler options? I…
How Chen
  • 1,340
  • 2
  • 17
  • 37
0
votes
0 answers

Show the complete build command in Keil

(Related question, never answered: Show complete commands during build in Keil uVision) Hi, I am using µVision V5.38.0.0 with the compiler armcc V5.06 update 7 (build 960). Below, you can see "compiling XXX.c...". I would like the complete build…
Meganita
  • 1
  • 1
0
votes
1 answer

GCC ARM preprocessor computes wrong negative number

This question relates to arm-none-eabi-gcc version 5.4.1. (I know is rather old but I must use it). int32_t tmp = INT32_MIN / 2; This produces the following assembly: mov.w r3, #1073741824 ; 0x40000000 When looking at this macro in…
tk_
  • 490
  • 3
  • 15
0
votes
1 answer

Why I got error A1616E when compile in DS-5 with embedded assembly

I got below error message when compile a simple c file with an __asm function. It seems "MSP" is not recognized. I can build after comment out "MRS R0, MSP". What I am missing here? Thanks. Invoking: Arm C Compiler for Embedded 5.6.6' armcc.exe…
James Sun
  • 1
  • 3
0
votes
0 answers

ARM Inline assembly for C code not executing

I am trying to use inline assembly for an ARM C code. My 'main.c' code looks something like this: ... void jump() { __asm { B 0x15000 } } INT32 main(void) { ... Write val1 into register 1 jump(); Write val2 into register 2 …
TJ1
  • 7,578
  • 19
  • 76
  • 119
0
votes
1 answer

What is the difference between armcc and armclang?

armcc and armclang are the compilers for embedded C and C++ code. Recently, armclang has been gaining popularity as an alternative compiler. What is the difference between armcc and armclang? Is there an advantage to using armclang?
SoyM
  • 3
  • 4
0
votes
1 answer

Misplaced preprocessor character '\'

I'm trying to get a bunch of C modules written in 1994 for a Panasonic 3DO lib to compile with armcc. I've run into an error which I'm kind of confused about. My knowledge of C is not that deep, so perhaps one of you would be so kind as to help me…
Shpack
  • 11
  • 1
0
votes
3 answers

assigning a variable using binary format - 0B causing error in ARM Keil uVision

I am workin on a project with TM4C123GH6PM micro-controller using keil uvision version 4.7. When I assign a value to a variable in binary format like the following: unsigned char tmp = 0b11000011; and then I build the project, the following error…
A.Mak
  • 13
  • 3
0
votes
1 answer

CMAKE: how to set the compiler flags that contains a given destination path and file name

I am working on a CMAKE build system that cross compile ARM CortexM4 using Keil ARMCC toolset in Windows I set the c compiler flags as the following set(CMAKE_C_FLAGS "-c --c99 --cpu=Cortex-M4.fp.sp --apcs=interwork --split_sections") However,…
Chen
  • 326
  • 3
  • 12
0
votes
1 answer

Macro for optimization level (ARMCC V6)

There are predefined macros such as __OPTIMIZE__ (defined in all optimizing compilations) and __OPTIMIZE_SIZE__ (defined if the compiler is optimizing for size). I use these macros to check if the correct optimization level is set for the release…
Pacinwa
  • 45
  • 5
0
votes
1 answer

How do I make CMake play nice with a proprietary C++ compiler?

I'm building an application for which I'd like to support a certain proprietary platform. It uses a modified version of ARMCC which CMake doesn't seem to like - no matter what I do, it keeps trying to provide strange flags to armlink where it should…
Ethan McTague
  • 2,236
  • 3
  • 21
  • 53
0
votes
1 answer

Does armclang/armcc provide options for copy-elision?

I have read some documents regarding on gcc on copy-elision and they provide options "-fno-elide-constructors" to disable copy-elision. I am wondering if arm supports this as well. I could not find any answer on arm user guide and reference guide...
0
votes
0 answers

Initialize C++ object array within the Constructor Initializer List

I am trying to initialize an array of objects. This seems to fail in Keil, using the armcc compiler, using the --cpp11 flag. The following is my class Wheel which would be used later in the Vehicle class. class Wheel { public: Wheel(const…
mmcblk1
  • 158
  • 1
  • 3
  • 10