29.12.2014 Views

RealView Compilation Tools Compiler Reference Guide - ARM ...

RealView Compilation Tools Compiler Reference Guide - ARM ...

RealView Compilation Tools Compiler Reference Guide - ARM ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Compiler</strong>-specific Features<br />

4.7.33 __schedule_barrier<br />

This intrinsic creates a sequence point where operations before and operations after the<br />

sequence point are not merged by the compiler. A scheduling barrier does not cause<br />

memory to be updated. If variables are held in registers they are updated in place, and<br />

not written out.<br />

This intrinsic is similar to the __nop intrinsic, except that no NOP instruction is generated.<br />

Syntax<br />

void schedule_barrier(void)<br />

See also<br />

• __nop on page 4-78<br />

4.7.34 __semihost<br />

This intrinsic inserts an SVC or BKPT instruction into the instruction stream generated by<br />

the compiler. It enables you to make semihosting calls from C or C++ that are<br />

independent of the target architecture.<br />

Syntax<br />

int __semihost(int val, const void *ptr)<br />

Where:<br />

val<br />

ptr<br />

Is the request code for the semihosting request.<br />

See Appendix A Semihosting in the Developer <strong>Guide</strong> for more<br />

information.<br />

Is a pointer to an argument/result block.<br />

See Appendix A Semihosting in the Developer <strong>Guide</strong> for more<br />

information.<br />

Return value<br />

See Appendix A Semihosting in the Developer <strong>Guide</strong> for more information on the<br />

results of semihosting calls.<br />

<strong>ARM</strong> DUI 0348A Copyright © 2007, 2010 <strong>ARM</strong> Limited. All rights reserved. 4-85<br />

Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!