OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [newlib-1.18.0/] [libgloss/] [moxie/] [sim-time.c] - Blame information for rev 252

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 207 jeremybenn
/* sim-time.c -- stubs so clock can be linked in.
2
 *
3
 * Copyright (c) 2008 Anthony Green
4
 *
5
 * The authors hereby grant permission to use, copy, modify, distribute,
6
 * and license this software and its documentation for any purpose, provided
7
 * that existing copyright notices are retained in all copies and that this
8
 * notice is included verbatim in any distributions. No written agreement,
9
 * license, or royalty fee is required for any of the authorized uses.
10
 * Modifications to this software may be copyrighted by their authors
11
 * and need not follow the licensing terms described here, provided that
12
 * the new terms are clearly indicated on the first page of each file where
13
 * they apply.
14
 */
15
#include <errno.h>
16
#include <sys/time.h>
17
#include <sys/times.h>
18
#include "glue.h"
19
 
20
/*
21
 * time -- simulator interface to return current time in seconds.
22
 */
23
__asm__ ("\
24
        .text\n\
25
        .globl  _sim_time\n\
26
        .type   _sim_time,@function\n\
27
_sim_time:\n\
28
        bad\n                   \
29
        ret\n\
30
.Lsim:\n\
31
        .size   _sim_time,.Lsim-_sim_time");
32
 
33
extern time_t _sim_time (void) __asm__("_sim_time");
34
 
35
 
36
/*
37
 * time -- return current time in seconds.
38
 */
39
time_t
40
_DEFUN (time, time (t),
41
        time_t *t)
42
{
43
  time_t ret = _sim_time ();
44
 
45
  if (t)
46
    *t = ret;
47
 
48
  return ret;
49
}
50
 
51
/*
52
 * _times -- no clock, so return an error.
53
 */
54
int
55
_DEFUN (_times, _times (buf),
56
        struct tms *buf)
57
{
58
  errno = EINVAL;
59
  return (-1);
60
}
61
 
62
/*
63
 * _gettimeofday -- implement in terms of time, which means we can't return the
64
 * microseconds.
65
 */
66
int
67
_DEFUN (_gettimeofday, _gettimeofday (tv, tz),
68
        struct timeval *tv _AND
69
        void *tzvp)
70
{
71
  struct timezone *tz = tzvp;
72
  if (tz)
73
    tz->tz_minuteswest = tz->tz_dsttime = 0;
74
 
75
  tv->tv_usec = 0;
76
  tv->tv_sec = _sim_time ();
77
  return 0;
78
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.