blob: b85a4636db33006de61d0092968963ecd6652cc3 [file] [log] [blame]
.arch msp430x123
.text
.p2align 1,0
.global foo
foo:
and #1, r11
inv r10
xor #0x00ff, r11
bis #8, r12
bit #0x10, r13
bic #0xa0, r14
cmp #0, r15
sub #1, r10
subc #0, r11
add #1, r12
addc #2, r13
push r14
pop r15
sxt r10
rra r11
swpb r12
rrc r13
ret
.p2align 1,0
.global main
.type main,@function
main:
mov #(__stack-0), r1
call #foo
mov &a, r14
mov r14, r15
rla r15
subc r15, r15
inv r15
call #__floatsisf
mov r14, &c
mov r15, &c+2
mov &b, r14
mov r14, r15
rla r15
subc r15, r15
inv r15
call #__floatsisf
mov r14, &d
mov r15, &d+2
mov #llo(240), r15
br #__stop_progExec__
.comm a,2,2
.comm b,2,2
.comm c,4,2
.comm d,4,2
;; This next instruction triggered a bug which
;; was fixed by a patch to msp430-dis.c on Jan 2, 2004
add &0x200, &0x172