Quantcast
Channel: Tools
Viewing all articles
Browse latest Browse all 91752

Forum Post: RE: can you specify HIGH or LOW byte of a LABEL/ADDRESS using the ".byte" or any other directive, is there anything similar to ORG ?

$
0
0

[quote user="George Mock"]Use the .field directive to put a 16-bit chunk of data (or symbol address) anywhere, and not just on 16-bit boundaries.[/quote]With MSP430 CGT v4.2.3 using .field on a symbol address appears to force 16-bit alignment, using either COFF or ELF. As an example used this assembler code:

[quote] .align 1
LOOKUP_TABLE .field 031h,8
.field CRC_16,16
.field DO_NOP,16

DO_NOP MOV R10, R11
NOP
RET

CRC_16 .word 045AEh

[/quote]The assembler listing file shows that the 2nd .field directive has been aligned to a 16-bit boundary and thus introduced one "padding" byte[quote] 10 .align 1
11 000000 0031 LOOKUP_TABLE .field 031h,8
12 000002 000C! .field CRC_16,16
13 000004 0006! .field DO_NOP,16
14
15 000006 4A0B DO_NOP MOV R10, R11
16 000008 4303 NOP
17 00000a 4130 RET
18
  19 00000c 45AE CRC_16 .word 045AEh[/quote]
Not sure is this is a "bug" in the assembler, or a limitation imposed by how symbol relocation is defined in the COFF / ELF format object files.


Viewing all articles
Browse latest Browse all 91752

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>