as: MSP430-Ext

1 
1 9.29.2.4 Assembler Extensions
1 .............................
1 
1 '@rN'
1      As destination operand being treated as '0(rn)'
1 
1 '0(rN)'
1      As source operand being treated as '@rn'
1 
1 'jCOND +N'
1      Skips next N bytes followed by jump instruction and equivalent to
1      'jCOND $+N+2'
1 
1    Also, there are some instructions, which cannot be found in other
1 assemblers.  These are branch instructions, which has different opcodes
1 upon jump distance.  They all got PC relative addressing mode.
1 
1 'beq label'
1      A polymorph instruction which is 'jeq label' in case if jump
1      distance within allowed range for cpu's jump instruction.  If not,
1      this unrolls into a sequence of
1             jne $+6
1             br  label
1 
1 'bne label'
1      A polymorph instruction which is 'jne label' or 'jeq +4; br label'
1 
1 'blt label'
1      A polymorph instruction which is 'jl label' or 'jge +4; br label'
1 
1 'bltn label'
1      A polymorph instruction which is 'jn label' or 'jn +2; jmp +4; br
1      label'
1 
1 'bltu label'
1      A polymorph instruction which is 'jlo label' or 'jhs +2; br label'
1 
1 'bge label'
1      A polymorph instruction which is 'jge label' or 'jl +4; br label'
1 
1 'bgeu label'
1      A polymorph instruction which is 'jhs label' or 'jlo +4; br label'
1 
1 'bgt label'
1      A polymorph instruction which is 'jeq +2; jge label' or 'jeq +6; jl
1      +4; br label'
1 
1 'bgtu label'
1      A polymorph instruction which is 'jeq +2; jhs label' or 'jeq +6;
1      jlo +4; br label'
1 
1 'bleu label'
1      A polymorph instruction which is 'jeq label; jlo label' or 'jeq +2;
1      jhs +4; br label'
1 
1 'ble label'
1      A polymorph instruction which is 'jeq label; jl label' or 'jeq +2;
1      jge +4; br label'
1 
1 'jump label'
1      A polymorph instruction which is 'jmp label' or 'br label'
1