Phasor 3.1.1
Stack VM based Programming Language
Loading...
Searching...
No Matches
crt.c
Go to the documentation of this file.
1#include "logical.h"
2
3int64_t asm_inot(int64_t a)
4{
5 return a == 0 ? 1 : 0;
6}
7
8int64_t asm_iand(int64_t a, int64_t b)
9{
10 return (a != 0 && b != 0) ? 1 : 0;
11}
12
13int64_t asm_ior(int64_t a, int64_t b)
14{
15 return (a != 0 || b != 0) ? 1 : 0;
16}
17
18int64_t asm_ixor(int64_t a, int64_t b)
19{
20 int a_bool = (a != 0);
21 int b_bool = (b != 0);
22 return (a_bool ^ b_bool) ? 1 : 0;
23}
24
25int64_t asm_iequal(int64_t a, int64_t b)
26{
27 return (a == b) ? 1 : 0;
28}
29
30int64_t asm_inot_equal(int64_t a, int64_t b)
31{
32 return (a != b) ? 1 : 0;
33}
34
35int64_t asm_iless_than(int64_t a, int64_t b)
36{
37 return (a < b) ? 1 : 0;
38}
39
40int64_t asm_igreater_than(int64_t a, int64_t b)
41{
42 return (a > b) ? 1 : 0;
43}
44
45int64_t asm_iless_equal(int64_t a, int64_t b)
46{
47 return (a <= b) ? 1 : 0;
48}
49
50int64_t asm_igreater_equal(int64_t a, int64_t b)
51{
52 return (a >= b) ? 1 : 0;
53}
54
55int64_t asm_flnot(double a)
56{
57 return a == 0 ? 1 : 0;
58}
59
60int64_t asm_fland(double a, double b)
61{
62 return (a != 0 && b != 0) ? 1 : 0;
63}
64
65int64_t asm_flor(double a, double b)
66{
67 return (a != 0 || b != 0) ? 1 : 0;
68}
69
70int64_t asm_flxor(double a, double b)
71{
72 int a_bool = (a != 0);
73 int b_bool = (b != 0);
74 return (a_bool ^ b_bool) ? 1 : 0;
75}
76
77int64_t asm_flequal(double a, double b)
78{
79 return (a == b) ? 1 : 0;
80}
81
82int64_t asm_flnot_equal(double a, double b)
83{
84 return (a != b) ? 1 : 0;
85}
86
87int64_t asm_flless_than(double a, double b)
88{
89 return (a < b) ? 1 : 0;
90}
91
92int64_t asm_flgreater_than(double a, double b)
93{
94 return (a > b) ? 1 : 0;
95}
96
97int64_t asm_flless_equal(double a, double b)
98{
99 return (a <= b) ? 1 : 0;
100}
101
102int64_t asm_flgreater_equal(double a, double b)
103{
104 return (a >= b) ? 1 : 0;
105}
int64_t asm_iless_than(int64_t a, int64_t b)
Native Less than comparison.
Definition crt.c:35
int64_t asm_flequal(double a, double b)
Definition crt.c:77
int64_t asm_flless_equal(double a, double b)
Definition crt.c:97
int64_t asm_flless_than(double a, double b)
Definition crt.c:87
int64_t asm_fland(double a, double b)
Definition crt.c:60
int64_t asm_flgreater_equal(double a, double b)
Definition crt.c:102
int64_t asm_flxor(double a, double b)
Definition crt.c:70
int64_t asm_ixor(int64_t a, int64_t b)
Native bitwise XOR.
Definition crt.c:18
int64_t asm_inot(int64_t a)
Definition crt.c:3
int64_t asm_igreater_equal(int64_t a, int64_t b)
Native Greater than or equal comparison.
Definition crt.c:50
int64_t asm_ior(int64_t a, int64_t b)
Native bitwise OR.
Definition crt.c:13
int64_t asm_igreater_than(int64_t a, int64_t b)
Native Greater than comparison.
Definition crt.c:40
int64_t asm_flnot_equal(double a, double b)
Definition crt.c:82
int64_t asm_flgreater_than(double a, double b)
Definition crt.c:92
int64_t asm_flnot(double a)
Native bitwise NOT.
Definition crt.c:55
int64_t asm_iand(int64_t a, int64_t b)
Native bitwise AND.
Definition crt.c:8
int64_t asm_flor(double a, double b)
Definition crt.c:65
int64_t asm_iequal(int64_t a, int64_t b)
Native Equality comparison.
Definition crt.c:25
int64_t asm_inot_equal(int64_t a, int64_t b)
Native Inequality comparison.
Definition crt.c:30
int64_t asm_iless_equal(int64_t a, int64_t b)
Native Less than or equal comparison.
Definition crt.c:45