X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device%2Flib%2F_strcmp.c;h=1e6121fd7ef69d321eeb8de02602b4f350972268;hb=f239a9f256f022ade8216daba928e817f2d5f528;hp=ea1cc68f5e3bc708a4e332b845595b76ab4e5486;hpb=b225ad4b7481128235e8868007618cf111985ade;p=fw%2Fsdcc diff --git a/device/lib/_strcmp.c b/device/lib/_strcmp.c index ea1cc68f..1e6121fd 100644 --- a/device/lib/_strcmp.c +++ b/device/lib/_strcmp.c @@ -22,22 +22,35 @@ what you give them. Help stamp out software-hoarding! -------------------------------------------------------------------------*/ #include "string.h" +#include + #define NULL (void *)0 int strcmp ( - char _generic *src, - char _generic *dst + char _generic *asrc, + char _generic *adst ) { - register int ret = 0 ; +#if _SDCC_Z80_STYLE_LIB_OPT + char ret = 0 ; + char _generic *src = asrc; + char _generic *dst = adst; - while( ! (ret = *src - *dst) && *dst) + while( ! (*src - *dst) && *dst) ++src, ++dst; + return *src - *dst; +#else + register int ret = 0 ; + + while( ! (ret = *asrc - *adst) && *adst) + ++asrc, ++adst; + if ( ret < 0 ) ret = -1 ; else if ( ret > 0 ) ret = 1 ; return( ret ); +#endif }