Login
7 branches 0 tags
Ben (X13/Void) Added arch_clang to the sr.ht CI 57b6e69 3 years ago 396 Commits
nujel / tests / asm-test.nuj
#!/usr/bin/env nujel

;[disassemble/test '[[$nop] [$push/int 5] [$push/int 2] [$add/int] [$ret]]]
;[disassemble/test '[[$nop] [$push/int 26] [$push/lval #t] [$jt :asd] [$push/int 99] [:label :asd] [$ret]]]
;[disassemble/test '[[$jmp :start] [:label :func] [$push/int 2] [$add/int] [$ret] [:label :start] [$push/int 3] [$call :func] [$ret]]]
;[disassemble/test '[[$jmp :start] [:label :ret] [$push/int 3] [$ret] [:label :start] [$push/int 2] [$jmp :ret] [$ret]]]

;[println [str/write [compile ''[1 . 2]]]]

;[println [str/write [byterun '[do [== :bool [type-of #f]]]]]]

[println [str/write [bytecompile [compile '[cons 1 2]]]]]

[def a [assemble [bytecompile [compile '[car [cons 1 2]]]]]]
[disassemble/raw a]
[println [ansi-rainbow "Done!!!! => " [bytecode-eval a]]]
;[disassemble/test '[bytecompile [compile '[- 7 1]]]]

[exit]

[println [str/write [compile '[cond [[odd? 2] #f] [even? 2] #t]]]]
[println [ansi-blue "--------------------"]]
[println [str/write [bytecompile [compile '[cond [[odd? 2] #f] [even? 2] #t]]]]]
[println [ansi-blue "--------------------"]]
[println [str/write [byterun [cond [[odd? 2] #f] [even? 2] #t]]]]

#_[println [str/write [asmrun
         [$jmp :start]
         [:label :handle]
         [$ret]
         [:label :start]
         [$try :handle]
         [$let]
         [$push/lval '[:asd "Test"]]
         [$throw]
]]]