        AREA ARMex, CODE, READONLY  ; name this block of code
        ENTRY                       ; mark first instruction
                                ; to execute

start
        LDR     r0,=0xffffffff
        LDR     r1,=0xffffffff	;{r1,r0} is a 64 bit integer -1
        LDR     r2,=0x00000002
        LDR     r3,=0x00000000	;{r3,r2} is a 64 bit integer 2
        ADDS    r4,r0,r2		;add the low 32 bits to form low 32 bits result
        ADC     r5,r1,r3		;add the high 32 bit and the previous carry to form high 32 bits result
				;now {r5,r4} is 64 bits result
stop
        MOV     r0, #0x18           ; angel_SWIreason_ReportException
        LDR     r1, =0x20026        ; ADP_Stopped_ApplicationExit
        SWI     0x123456            ; Angel semihosting ARM SWI

        END                         ; Mark end of file
