11. Assembler-direktiivit¶
11.1. Nimiöt¶
label(INNER1)
Tämä määrittelee nimiön käytettäväksi haarautumiskäskyssä. Niinpä muualla koodissa b(INNER1) saa suorituksen jatkumaan nimiödirektiiviä seuraavasta käskystä.
11.2. Inline-datan määrittäminen¶
Seuraavat assembler-direktiivit helpottavat datan upottamista assembler-koodilohkoon.
data(size, d0, d1 .. dn)
data-direktiivi luo data-arvojen taulukon muistiin. Ensimmäinen argumentti määrittää seuraavien argumenttien koon tavuina. Niinpä alla oleva ensimmäinen lause saa assemblerin sijoittamaan kolme tavua (arvoilla 2, 3 ja 4) peräkkäisiin muistipaikkoihin, kun taas toinen saa sen tuottamaan kaksi neljän tavun sanaa.
data(1, 2, 3, 4)
data(4, 2, 100000)
Yhtä tavua pidemmät data-arvot tallennetaan muistiin little-endian-muodossa.
align(nBytes)
Kohdista seuraava käsky nBytes-arvoon. ARM Thumb-2 -käskyjen on oltava kahden tavun kohdistettuja, joten on suositeltavaa antaa align(2) data-direktiivien jälkeen ja ennen mahdollista seuraavaa koodia. Tämä varmistaa, että koodi toimii data-taulukon koosta riippumatta.