7.1. About interworking

You can mix ARM and Thumb code as you wish, provided that the code conforms to the requirements of the ARM and Thumb Procedure Call Standards. The ARM compilers always create code that conforms to these standards. If you are writing ARM assembly language modules you must ensure that your code conforms. See Chapter 6 Using the Procedure Call Standards for detailed information.

The ARM linker detects when ARM and Thumb code is being mixed, and can generate small code segments called veneers. These veneers perform an ARM-Thumb state change on function entry and exit whenever an ARM function is called from Thumb state, or a Thumb function is called from ARM state.

Copyright © 1997, 1998 ARM Limited. All rights reserved.ARM DUI 0040D
Non-Confidential