diff options
Diffstat (limited to 'newlib/libc/machine/w65/cmpsi.c')
-rw-r--r-- | newlib/libc/machine/w65/cmpsi.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/newlib/libc/machine/w65/cmpsi.c b/newlib/libc/machine/w65/cmpsi.c new file mode 100644 index 0000000..3773c9d --- /dev/null +++ b/newlib/libc/machine/w65/cmpsi.c @@ -0,0 +1,28 @@ + +union u { + struct { + short int msw; + unsigned short lsw; +} w; +long l; +}; + +int +__cmpsi2(long arga, + short int msw_b, unsigned short int lsw_b) +{ + union u u; + u.l = arga; + + if (u.w.msw != msw_b) + { + if (u.w.msw < msw_b) return 0; + return 2; + } + if (u.w.lsw != lsw_b) + { + if (u.w.lsw < lsw_b) return 0; + return 2; + } + return 1; +} |