Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .file "Termin5Aufgabe1.c"
- .global max
- .data
- .align 2
- .type max, %object
- .size max, 4
- max:
- .word 12
- .section .rodata
- .align 2
- .LC0:
- .ascii "0\000"
- .text
- .align 2
- .global toString
- .type toString, %function
- toString:
- @ args = 0, pretend = 0, frame = 32
- @ frame_needed = 1, uses_anonymous_args = 0
- stmfd sp!, {r4, r5, r6, r7, r8, sl, fp, lr}
- add fp, sp, #28
- sub sp, sp, #32
- str r0, [fp, #-60]
- mov r0, sp
- mov sl, r0
- ldr r0, .L11
- ldr r0, [r0, #0]
- sub ip, r0, #1
- str ip, [fp, #-56]
- mov ip, r0
- mov r5, ip
- mov r6, #0
- mvn r7, #0
- mov r8, #15
- and r5, r5, r7
- and r6, r6, r8
- mov ip, r5, lsr #29
- mov r2, r6, asl #3
- orr r2, ip, r2
- mov r1, r5, asl #3
- mvn r5, #0
- mov r6, #15
- and r1, r1, r5
- and r2, r2, r6
- mov r2, r0
- mov r1, r2
- mov r2, #0
- mvn r5, #0
- mov r6, #15
- and r1, r1, r5
- and r2, r2, r6
- mov ip, r1, lsr #29
- mov r4, r2, asl #3
- orr r4, ip, r4
- mov r3, r1, asl #3
- mvn r1, #0
- mov r2, #15
- and r3, r3, r1
- and r4, r4, r2
- mov r3, r0
- add r3, r3, #3
- add r3, r3, #3
- mov r3, r3, lsr #2
- mov r3, r3, asl #2
- sub sp, sp, r3
- mov r3, sp
- add r3, r3, #3
- mov r3, r3, lsr #2
- mov r3, r3, asl #2
- str r3, [fp, #-52]
- mov r3, #0
- str r3, [fp, #-44]
- mov r3, #0
- str r3, [fp, #-36]
- ldr r3, [fp, #-60]
- cmp r3, #0
- bge .L2
- mov r3, #1
- str r3, [fp, #-36]
- ldr r3, [fp, #-60]
- cmp r3, #0
- rsblt r3, r3, #0
- str r3, [fp, #-60]
- .L2:
- ldr r3, [fp, #-60]
- cmp r3, #0
- bne .L5
- ldr r0, .L11+4
- bl puts
- b .L4
- .L6:
- ldr r2, [fp, #-60]
- ldr r3, .L11+8
- smull r1, r3, r2, r3
- mov r1, r3, asr #2
- mov r3, r2, asr #31
- rsb r1, r3, r1
- mov r3, r1
- mov r3, r3, asl #2
- add r3, r3, r1
- mov r3, r3, asl #1
- rsb r3, r3, r2
- str r3, [fp, #-48]
- ldr r3, [fp, #-60]
- ldr r2, .L11+8
- smull r1, r2, r3, r2
- mov r2, r2, asr #2
- mov r3, r3, asr #31
- rsb r3, r3, r2
- str r3, [fp, #-60]
- ldr r3, [fp, #-48]
- add r3, r3, #48
- str r3, [fp, #-48]
- ldr r3, [fp, #-48]
- strb r3, [fp, #-37]
- ldr r3, [fp, #-44]
- ldr r2, [fp, #-52]
- ldrb r1, [fp, #-37]
- strb r1, [r2, r3]
- ldr r3, [fp, #-44]
- add r3, r3, #1
- str r3, [fp, #-44]
- .L5:
- ldr r3, [fp, #-60]
- cmp r3, #0
- bne .L6
- ldr r3, [fp, #-36]
- cmp r3, #1
- bne .L7
- ldr r3, [fp, #-44]
- ldr r2, [fp, #-52]
- mov r1, #45
- strb r1, [r2, r3]
- ldr r3, [fp, #-44]
- add r3, r3, #1
- str r3, [fp, #-44]
- .L7:
- ldr r3, [fp, #-44]
- sub r3, r3, #1
- str r3, [fp, #-32]
- b .L8
- .L9:
- ldr r3, [fp, #-32]
- ldr r2, [fp, #-52]
- ldrb r3, [r2, r3] @ zero_extendqisi2
- mov r0, r3
- bl putc
- ldr r3, [fp, #-32]
- sub r3, r3, #1
- str r3, [fp, #-32]
- .L8:
- ldr r3, [fp, #-32]
- cmp r3, #0
- bge .L9
- .L4:
- mov sp, sl
- sub sp, fp, #28
- ldmfd sp!, {r4, r5, r6, r7, r8, sl, fp, pc}
- .L12:
- .align 2
- .L11:
- .word max
- .word .LC0
- .word 1717986919
- .size toString, .-toString
- .section .rodata
- .align 2
- .LC1:
- .ascii "Hallo! \012\000"
- .text
- .align 2
- .global main
- .type main, %function
- main:
- @ args = 0, pretend = 0, frame = 4
- @ frame_needed = 1, uses_anonymous_args = 0
- stmfd sp!, {fp, lr}
- add fp, sp, #4
- sub sp, sp, #4
- bl inits
- bl init_ser
- mov r0, #13
- bl putc
- mov r0, #10
- bl putc
- bl getc
- mov r3, r0
- strb r3, [fp, #-5]
- ldrb r3, [fp, #-5] @ zero_extendqisi2
- mov r0, r3
- bl putc
- ldr r0, .L15
- bl puts
- mov r0, #13
- bl putc
- mov r0, #10
- bl putc
- mov r0, #1
- bl toString
- mov r0, #13
- bl putc
- mov r0, #10
- bl putc
- mvn r0, #0
- bl toString
- mov r0, #13
- bl putc
- mov r0, #10
- bl putc
- mov r0, #10
- bl toString
- mov r0, #13
- bl putc
- mov r0, #10
- bl putc
- mvn r0, #9
- bl toString
- mov r3, #0
- mov r0, r3
- sub sp, fp, #4
- ldmfd sp!, {fp, pc}
- .L16:
- .align 2
- .L15:
- .word .LC1
- .size main, .-main
- .ident "GCC: (GNU) 4.4.1"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement