GCC-Inline-Assembly: Sprung zu label außerhalb block

Bei der Verwendung von inline-assembly unter MSVC, erlaubt zu springen, außerhalb der Montage-block referenzieren ein label in der C/C++ - code, wie bereits erläutert,in diesem MSDN-Artikel.

Kann so etwas geschehen, wenn die Verwendung von inline-assembly unter GCC?

Hier ist ein Beispiel von, was ich versuche zu erreichen:

__asm__ __volatile__ (
"   /* assembly code */"
"   jz external_label;  "
);

/* some C code */

external_label:
/* C code coninues... */

Den compiler, jedoch beschwert sich über "external_label" nicht definiert wird.

  • Warum __volatile__?
InformationsquelleAutor Vicent Marti | 2009-04-13
Schreibe einen Kommentar