1. bzt szerint C-ben nem lehet IRETQ-t generálni.
Azt csak a TROLLok hazudták. Én sosem állítottam ilyent.
Azt állítottam, hogy szabvány C függvénnyel nem lehet megszakításkezelőt írni x86-on. Valamint azt, hogy ABI felülbíráló attribútumot (mint amilyen pl. az "__attribute__((interrupt))") használva már nem szabvány C függvényről beszélünk, és ráadásul önmagában az IRETQ sem elég, a vermet is gatyába kell rázni, mielőtt azt az IRETQ utasítást kiadhatná a processzor (hívott általi paramétereltávolítás nem C szabvány).
Mindezt össze is foglaltam micsa szánalmas posztjára válaszként.
2. Erre Mcsiv összerakott valamit C-ben ami valahogy kiizzadt magából egy IRETQ utasítást.
Nem, amit micsa összerakott, az nem is generált IRETQ-t (mert csak egy prototípus, implementáció nélkül). Annak is hibás (gcc mondja: "error: attributes should be specified before the declarator in a function definition").
Mcsiv hazudott, megpróbálta a) ezt a hibát letagadni és azt hazudta, lefordul, és b) suttyomban implementációra kijavítva és extra "-mgeneral-regs-only" kapcsolót megadva végül hibás kódra fordította le.
3. De ez bzt-nek nem tetszik, mert csak egy laboratóriumi eset aminek gyakorlati haszna nincs.
Nem, az a baj vele, hogy HIBÁS. Még ha kijavítjuk implementációra, akkor is hibás, le sem fordul (gcc mondja: "sorry, unimplemented: SSE instructions aren’t allowed in an interrupt service routine").
Ha megadunk speciális gcc kapcsolókat, akkor lefordulni már le fog ugyan, de úgysem működő kód az eredmény, elszáll a francba például page fault megszakítás esetén. Ezt is érthetően leírtam MCsiv-nek, csak hát nem tud olvasni.
Félreértés ne essék, mükődő C kódot ezidáig egyetlen nagyszájú sem volt képes bemutatni, helyette MCsiv beismerte, hogy csak 10 mp-t foglalkozott a témával és nem is ért hozzá, úgy próbált meg rosszindulatóan okoskodni, meg ártó szándékkal kötözködni.
Zanzásítva ez a tényállás.
ps: a teljesség kedvéért leírom, hogy létezik gcc specifikus workaround a problémára de az
a) nem része a C nyelvnek,
b) fordító függő hákolás,
c) azt a workaround-ot egyik TROLL sem említette ezidáig még.
Csak pofáznak meg hazudoznak itt össze-vissza, de hetek alatt sem voltak képesek elolvasni a gcc doksiját, ezért mondtam, hogy "nemcsak buták, de tanulni sem akarnak".