This intrinsic inserts an assembly language instruction of
the form STR{size}T into the instruction stream generated
by the compiler. It enables you to store data to memory in your
C or C++ code using an STRT instruction.
Syntax
void __strt(unsigned int val, volatile void *ptr)
where:
val
Is the value to be written to memory.
ptr
Points to the address of the data to be written
to in memory. To specify the size of the data to be written, cast
the parameter to an appropriate integral type.
Table 20. Access widths supported by the __strt intrinsic
Instruction
Size of data loaded
C cast
STRBT
unsigned byte
(char *)
STRHT
unsigned halfword
(short int *)
STRT
word
(int *)
Errors
The compiler does not recognize the __strt intrinsic
when compiling for a target that does not support the STRT instruction.
The compiler generates either a warning or an error in this case.
The __strt intrinsic does not support
access either to signed data or to doubleword data. The compiler
generates an error if you specify an access width that is not supported.
Example
void foo(void)
{
int loc=0xff;
__strt(0x20, (volatile char *)loc);
}
This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.
ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.