.file "prime-fail.p" .local I .common I,4,4 .local J .common J,4,4 .local N .common N,2399999996,4 .local Io .common Io,16712,16 .section .rodata.str1.8,"aMS",@progbits,1 .align 8 .LLC0: .asciz "List the prime numbers up to " .section ".text" .align 4 .global pascal_main_program .type pascal_main_program,#function .proc 020 pascal_main_program: !#PROLOGUE# 0 save %sp, -224, %sp !#PROLOGUE# 1 sethi %hh(_p_Output), %o4 sethi %hh(.LLC0), %l7 or %o4, %hm(_p_Output), %l6 or %l7, %hm(.LLC0), %l0 sllx %l0, 32, %l1 sllx %l6, 32, %l3 sethi %lm(_p_Output), %l4 sethi %lm(.LLC0), %l2 add %l3, %l4, %o3 add %l1, %l2, %o5 sethi %hi(1200000000), %l5 mov 3, %o2 mov 22, %o7 or %o3, %lo(_p_Output), %o0 or %o5, %lo(.LLC0), %o4 srlx %l5, 1, %l0 stx %o2, [%sp+2223] mov 784, %o1 stx %o7, [%sp+2239] stx %l0, [%sp+2231] mov 17, %o3 call _p_Internal_Write, 0 mov 29, %o5 sethi %hh(_p_InOutRes), %o2 sethi %lm(_p_InOutRes), %g5 or %o2, %hm(_p_InOutRes), %o1 sllx %o1, 32, %g1 add %g1, %g5, %g4 ld [%g4+%lo(_p_InOutRes)], %g1 cmp %g1, 0 bne,pn %icc, .LL21 sethi %hh(I), %l3 sethi %hh(N), %o5 or %l3, %hm(I), %o7 or %o5, %hm(N), %o1 sllx %o7, 32, %o2 sethi %lm(I), %o3 sllx %o1, 32, %g4 add %o2, %o3, %g5 sethi %lm(N), %g1 or %g5, %lo(I), %i1 add %g4, %g1, %i0 mov 2, %i2 mov %l0, %o1 st %i2, [%i1] mov %i1, %l0 mov 0, %o5 mov 1, %o7 or %i0, %lo(N), %o4 .LL5: or %l3, %hm(I), %l1 andcc %o5, 0xff, %g0 sllx %l1, 32, %o0 mov 1, %o5 be,pt %icc, .LL7 add %o0, %o3, %o2 or %o2, %lo(I), %o2 ld [%o2], %l2 cmp %l2, %o1 be,pn %icc, .LL4 add %l2, 1, %o0 st %o0, [%o2] .LL7: ldsw [%l0], %l6 sllx %l6, 2, %l5 add %l5, %o4, %l4 ba,pt %xcc, .LL5 st %o7, [%l4-8] .LL4: or %l3, %hm(I), %o5 sethi %lm(I), %l7 sllx %o5, 32, %g5 sethi %hh(_p_InOutRes), %o2 add %g5, %l7, %i1 mov 2, %i0 or %i1, %lo(I), %l0 or %o2, %hm(_p_InOutRes), %g1 sllx %g1, 32, %i2 sethi %lm(_p_InOutRes), %g4 st %i0, [%l0] add %i2, %g4, %o3 mov %l7, %i0 sethi %hi(599999488), %o4 or %o4, 512, %l7 mov %l0, %l5 mov 0, %l2 sethi %lm(N), %l4 sethi %lm(J), %i1 sethi %lm(_p_Output), %i2 or %o3, %lo(_p_InOutRes), %l6 .LL10: andcc %l2, 0xff, %g0 .LL22: be,pt %icc, .LL23 sethi %hh(N), %l0 or %l3, %hm(I), %l1 sllx %l1, 32, %o0 add %o0, %i0, %o7 or %o7, %lo(I), %o1 ld [%o1], %o0 cmp %o0, %l7 be,pn %icc, .LL1 add %o0, 1, %l2 st %l2, [%o1] sethi %hh(N), %l0 .LL23: ld [%l5], %o2 or %l0, %hm(N), %o5 sra %o2, 0, %o4 sllx %o5, 32, %g5 sllx %o4, 2, %g1 add %g5, %l4, %o1 or %o1, %lo(N), %l0 add %g1, %l0, %g4 ld [%g4-8], %o3 cmp %o3, 1 bne,pt %icc, .LL10 mov 1, %l2 sethi %hh(J), %o0 sethi %hh(_p_Output), %l1 or %o0, %hm(J), %g5 or %l1, %hm(_p_Output), %o1 sllx %g5, 32, %g1 sllx %o1, 32, %o3 add %g1, %i1, %g4 add %o3, %i2, %o7 or %g4, %lo(J), %l1 or %o7, %lo(_p_Output), %o0 st %o2, [%l1] mov 784, %o1 mov 22, %o2 mov 35, %o3 stx %o2, [%sp+2223] mov 10, %o5 call _p_Internal_Write, 0 mov 2, %o2 ld [%l6], %o4 cmp %o4, 0 bne,pn %icc, .LL21 sethi %hh(I), %g4 sethi %hi(599999488), %o2 or %g4, %hm(I), %o5 sethi %lm(I), %o3 sllx %o5, 32, %o4 add %o4, %o3, %o7 or %o2, 512, %o5 mov %l0, %o4 mov %l1, %o3 ld [%o7+%lo(I)], %o2 .LL17: ld [%o3], %o1 sra %o1, 0, %l1 add %o1, %o2, %g1 sllx %l1, 2, %g5 cmp %g1, %o5 add %g5, %o4, %l0 st %g1, [%o3] ble,pt %icc, .LL17 st %o2, [%l0-8] ba,pt %xcc, .LL22 andcc %l2, 0xff, %g0 .LL21: call _p_CheckInOutRes, 0 nop .LL1: nop return %i7+8 nop .LLfe1: .size pascal_main_program,.LLfe1-pascal_main_program .section ".data" .type ctor_run_condition_2.0,#object .size ctor_run_condition_2.0,1 ctor_run_condition_2.0: .byte 0 .section ".rodata" .align 8 .LLC1: .asciz "io" .skip 198 .section ".text" .align 4 .global init_pascal_main_program .type init_pascal_main_program,#function .proc 020 init_pascal_main_program: !#PROLOGUE# 0 save %sp, -192, %sp !#PROLOGUE# 1 sethi %hh(Io), %o1 sethi %hh(.LLC1), %o7 or %o1, %hm(Io), %o4 or %o7, %hm(.LLC1), %g5 sethi %hh(ctor_run_condition_2.0), %o0 sllx %o4, 32, %o7 or %o0, %hm(ctor_run_condition_2.0), %o3 sllx %g5, 32, %o4 sllx %o3, 32, %g1 sethi %lm(ctor_run_condition_2.0), %g4 add %g1, %g4, %g5 sethi %lm(.LLC1), %o3 add %o4, %o3, %g1 sethi %lm(Io), %o2 or %g5, %lo(ctor_run_condition_2.0), %o5 or %g1, %lo(.LLC1), %o1 add %o7, %o2, %g4 ldub [%o5], %g1 or %g4, %lo(Io), %o0 mov 1, %o2 cmp %g1, 0 bne,pt %icc, .LL24 mov 129, %o3 mov 1, %g1 call _p_InitFDR, 0 stb %g1, [%o5] call _p_DoInitProc, 0 restore .LL24: nop return %i7+8 nop .LLfe2: .size init_pascal_main_program,.LLfe2-init_pascal_main_program .align 4 .global main .type main,#function .proc 04 main: !#PROLOGUE# 0 save %sp, -192, %sp !#PROLOGUE# 1 sethi %hh(__GPC_RTS_VERSION_20030507__), %o1 sethi %lm(__GPC_RTS_VERSION_20030507__), %g5 or %o1, %hm(__GPC_RTS_VERSION_20030507__), %g1 mov %i0, %o0 sllx %g1, 32, %g4 mov %i1, %o1 add %g4, %g5, %g1 mov %i2, %o2 ld [%g1+%lo(__GPC_RTS_VERSION_20030507__)], %o4 call _p_initialize, 0 mov 0, %i0 call init_pascal_main_program, 0 nop call pascal_main_program, 0 nop call _p_finalize, 0 nop nop return %i7+8 nop .LLfe3: .size main,.LLfe3-main .ident "GCC: (GNU) 3.2.1"