Keil Logo

C166: Inline Expansion of C Runtime Library Functions


Information in this article applies to:

  • C166

QUESTION

The C166 Compiler User's Guide lists intrinsic functions that are expanded inline.

I have noticed that the strcpy function also generates inline code.

Which library functions are expanded inline and is there a way to disable the inline expansion?

ANSWER

The intrinsic library functions (those in intrins.h) are always expanded inline as documented.

Additionally, the following library routines are expanded inline for near function calls:

  • strcpy
  • strlen
  • strchr
  • strcmp
  • strcat
  • memset
  • memcpy

There is no way to disable inline expansion. However, you may choose a memory model that uses far function calls and library functions (other than those in intrins.h) that are not expanded inline.

MORE INFORMATION


Last Reviewed: Thursday, February 25, 2021


Did this article provide the answer you needed?
 
Yes
No
Not Sure
 
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.