Suchergebnisse für Anfrage "inline-assembly"
Wie greife ich von Inline-Asm auf C struct / variables zu?
Betrachten Sie den folgenden Code: int bn_div(bn_t *bn1, bn_t *bn2, bn_t *bnr) { uint32 q, m; /* Division Result */ uint32 i; /* Loop Counter */ uint32 j; /* Loop Counter */ /* Check Input */ if (bn1 == NULL) return(EFAULT); if (bn1->dat == ...
Unerwartetes GCC-Inline-ASM-Verhalten (überladene Variable überschrieben)
Auf meinem Computer wird in der kompilierten ausführbaren Datei "mov% 2, %% ax" oben in der Schleife nicht ausgeführt. wenn "% 1, %% axe hinzufügen" nicht kommentiert. Wenn Sie nicht doppelt prüfen oder kommentieren möchten? #include <stdio.h> ...
gcc entfernt den Inline-Assembler-Code
Es scheint, als ob gcc 4.6.2 Code entfernt, den es als nicht verwendet für Funktionen ansieht.test.c
Informationen, die besagen, dass die Inline-Assembly einen bestimmten Speicherbereich liest
GCC (alle Versionen, die ich bequem testen kann) zeigt an, dass eine Inline-Assembly-Anweisung eine bestimmte Speicherregion liest (ausgedrückt als Zeigerp und eine Größen) mit diesem zugegebenermaßen umständlichen Konstrukt: asm ("..." : : "m" ...
gcc, Inline-Assembly - Pushad / Popad fehlt?
So müssen Sie das @ nicht kopieren und einfügpushad/popad Anweisungskörper in meinen Code? Weil gcc (aktuelle Flags:-Wall -m32) beschwert sich, dass __asm__("pushad;");Error: keine solche Anweisung: `pushad ' __asm__("popad;");Error: keine ...
Wie teile ich GCC asm mit, dass ein Eingaberegister überfüllt ist?
Ich versuche eine 64 = 32x32 Multiplikation über das x86 @ zu machmul Anweisung, aber ich brauche nur das hohe Wort des Ergebnisses (dasedx registrieren). Also habe ich natürlich versucht Listingedx als Ausgangsregister undeax als überladenes ...
Ist Inline als Teil des ANSI C-Standards?
Ich dachte immer, es sei so, aber viele IDEs und Syntax-Hervorhebungswerkzeuge heben ASM in C nicht hervor, aber sie tun es immer mit C ++. Gehört die Inline...
Erzwinge, dass GCC Argumente auf den Stack schiebt, bevor die Funktion aufgerufen wird (mit der PUSH-Anweisung)
Ich habe begonnen, ein kleines 16-Bit-Betriebssystem unter GCC / G ++ zu entwickeln. Ich verwende einen GCC-Cross-Compiler, den ich unter Cygwin kompiliert h...