Diff for /libelwix/src/time.c between versions 1.1.2.6 and 1.5.72.1

version 1.1.2.6, 2013/03/07 16:17:20 version 1.5.72.1, 2022/12/01 19:50:46
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013Copyright 2004 - 2022
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 260  time_Parse(const char *csTime) Line 260  time_Parse(const char *csTime)
         if ((tim = timegm(&tm)) == (time_t) -1)          if ((tim = timegm(&tm)) == (time_t) -1)
                 elwix_SetErr(EINVAL, "Invalid date/time format");                  elwix_SetErr(EINVAL, "Invalid date/time format");
         return tim;          return tim;
   }
   
   /*
    * time_rdtsc() - Get TSC timer value from CPU
    *
    * return: TSC in nanoseconds
    */
   uint64_t
   time_rdtsc(void)
   {
   #if defined(i386) || defined(__i386__)
           /* i386 */
           uint32_t hi, lo;
   
           asm volatile("rdtsc" : "=d" (hi), "=a" (lo));
           return (((uint64_t) hi << 32) | (uint64_t) lo);
   #elif defined(amd64) || defined(__amd64__) || \
           defined(x86_64) || defined(__x86_64__)
           /* amd64 */
           uint64_t res;
   
           asm volatile("rdtsc" : "=a" (res));
           return res;
   #else
           /* unsupported for this architecture, get time by ordinary way */
           struct timespec ts = { 0, 0LL };
   
   #ifndef CLOCK_UPTIME_PRECISE
           clock_gettime(CLOCK_MONOTONIC, &ts);
   #else
           clock_gettime(CLOCK_UPTIME_PRECISE, &ts);
   #endif
           return ((uint64_t) ts.tv_sec * 1000000000 + ts.tv_nsec);
   #endif
 }  }

Removed from v.1.1.2.6  
changed lines
  Added in v.1.5.72.1


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>