From ed72afe3350e7728729ff7c85add660c849a2efe Mon Sep 17 00:00:00 2001 From: nub31 Date: Thu, 2 Oct 2025 14:26:42 +0200 Subject: [PATCH] .. --- examples/array/.build/out.asm | 79 ++++++++++++++++++++++++++++++++++ examples/array/.build/out.o | Bin 0 -> 936 bytes examples/array/.build/out.ssa | 65 ++++++++++++++++++++++++++++ examples/array/main.nub | 6 +++ examples/array/makefile | 15 +++++++ examples/array/out | Bin 0 -> 13560 bytes examples/array/x86_64.s | 10 +++++ examples/raylib/main.nub | 1 - 8 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 examples/array/.build/out.asm create mode 100644 examples/array/.build/out.o create mode 100644 examples/array/.build/out.ssa create mode 100644 examples/array/main.nub create mode 100644 examples/array/makefile create mode 100755 examples/array/out create mode 100644 examples/array/x86_64.s diff --git a/examples/array/.build/out.asm b/examples/array/.build/out.asm new file mode 100644 index 0000000..89bcb17 --- /dev/null +++ b/examples/array/.build/out.asm @@ -0,0 +1,79 @@ +.text +.cstring_len: + pushq %rbp + movq %rsp, %rbp + movl $0, %eax +.Lbb2: + movzbl (%rdi, %rax, 1), %ecx + cmpl $0, %ecx + jz .Lbb4 + addq $1, %rax + jmp .Lbb2 +.Lbb4: + leave + ret +.type .cstring_len, @function +.size .cstring_len, .-.cstring_len +/* end function .cstring_len */ + +.text +.memcpy: + pushq %rbp + movq %rsp, %rbp + movl $0, %eax +.Lbb7: + cmpq %rdx, %rax + jae .Lbb9 + movzbl (%rdi, %rax, 1), %ecx + movb %cl, (%rsi, %rax, 1) + addq $1, %rax + jmp .Lbb7 +.Lbb9: + leave + ret +.type .memcpy, @function +.size .memcpy, .-.memcpy +/* end function .memcpy */ + +.text +.memset: + pushq %rbp + movq %rsp, %rbp + movl $0, %eax +.Lbb12: + cmpq %rdx, %rax + jae .Lbb14 + movb %sil, (%rdi, %rax, 1) + addq $1, %rax + jmp .Lbb12 +.Lbb14: + leave + ret +.type .memset, @function +.size .memset, .-.memset +/* end function .memset */ + +.text +.array_size: + pushq %rbp + movq %rsp, %rbp + movq (%rdi), %rax + leave + ret +.type .array_size, @function +.size .array_size, .-.array_size +/* end function .array_size */ + +.text +.globl main +main: + pushq %rbp + movq %rsp, %rbp + movl $0, %eax + leave + ret +.type main, @function +.size main, .-main +/* end function main */ + +.section .note.GNU-stack,"",@progbits diff --git a/examples/array/.build/out.o b/examples/array/.build/out.o new file mode 100644 index 0000000000000000000000000000000000000000..8e945ec701ef519a8fce1abafef0dcf468001b93 GIT binary patch literal 936 zcmb<-^>JfjWMqH=Mg}_u1P><4z_0>I&;cy$z`()4&JgO+`E&<}&%cd_z4<3Y37bdr z0mj!KPacNLcvxO2<^@T2@IWNrp-FN%beOOsYxC%4M^bX~FxWoq1jt!TNG_IwD&vES z!}zjLaWSa4Ig}5RmxGE2Ld7|uv=)#S0-7HM<#R)62EF9slA_GK^!S|AJO;ho)ZFBP zN-$lVTEd{0SX7i)8DE@PmCBHtn3>1GpjTX(TauUrq)Un*bOwx7l3D@Ok&;-F$e@>0 zT+E=CmtT^q=k6D(TU?TuoDH*(GFlp_9TZk/dev/null || true + @rm out 2>/dev/null || true diff --git a/examples/array/out b/examples/array/out new file mode 100755 index 0000000000000000000000000000000000000000..9c0edeb263801f725d31cee4d36c323639148f99 GIT binary patch literal 13560 zcmeHO&r4KM6u$nPQX>n4=m!Y3^=Tn8Lc~N_PbVnYLMTDB z@E_z+)2EM992F8BgK` zi34JVjLbWzeUtfsM)twH7AA?E#HvgP#CR=Vw*(|n+%>4n$J%uF#v@5w7XlFZc=>0N0^WG^hH_+cZRp^=W{F&LF+4MlqK))4~t*go>K?Aq zoOzyN;Bes@r3$D5s(>n>3aA3AfGVI0r~<0M|E7Sw@MUv?Hf1lY*egrdsCTku++NuD zz#BdJz9TjF(}b<|+)~5V_UdwN#2#D=PVn%2M?Cm7G1!)w?@!g!>{qF}kkw_LUz;kR z3aA3AfGVI0r~;~hDxeCe0;+&2pbDr0s(>n>3aA3AfGVI0r~;~hDxeCe0;+&2a6}5A z&KUUp_imX}zmq!asHU9kO|el+y(V^>tg}6VXT?4v2>7)d&rdc=yD@a6$op+J+q=o6 zDRMMYg?g71f}fKBuIXmKCH{-z=lXs2-%Z4G9Xk76@gJ9XhW+yPk-vc?L47&G2dUG^ zQgJ|C%TRwm|48Jgw$?<$+te{#7og86U ziLr>DUk+Vs(x0(%Gai-3dj(^8e&|-FP2?>)LD5)+s!ub-7*>oGy0f$nx0s!%I3+jo zJ0&lVUH?0tCu;mH#B&^U-vAkK-vG8n9sb7TnC!U+f_oo`$N7WJW&A(rtbmX62m~K_ zlZPooe14bUDR{vSbp#jpSX literal 0 HcmV?d00001 diff --git a/examples/array/x86_64.s b/examples/array/x86_64.s new file mode 100644 index 0000000..f55a1d0 --- /dev/null +++ b/examples/array/x86_64.s @@ -0,0 +1,10 @@ +.intel_syntax noprefix + +.text +.globl _start +_start: + mov rdi, rsp + call main + mov rdi, rax + mov rax, 60 + syscall diff --git a/examples/raylib/main.nub b/examples/raylib/main.nub index a52d142..90710f8 100644 --- a/examples/raylib/main.nub +++ b/examples/raylib/main.nub @@ -1,4 +1,3 @@ -import "core" import "raylib" module "main"