[Vm-dev] [commit][3433] Fix heartbeat code signatures for 64-bits.
commits at squeakvm.org
commits at squeakvm.org
Fri Sep 11 16:29:41 UTC 2015
Revision: 3433
Author: eliot
Date: 2015-09-11 09:29:40 -0700 (Fri, 11 Sep 2015)
Log Message:
-----------
Fix heartbeat code signatures for 64-bits. Thnaks, Ryan.
Modified Paths:
--------------
branches/Cog/platforms/unix/vm/sqUnixITimerHeartbeat.c
branches/Cog/platforms/unix/vm/sqUnixITimerTickerHeartbeat.c
branches/Cog/platforms/win32/vm/sqWin32Heartbeat.c
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Thu Sep 10 16:19:32 PDT 2015
+ Fri Sep 11 09:29:08 PDT 2015
Modified: branches/Cog/platforms/unix/vm/sqUnixITimerHeartbeat.c
===================================================================
--- branches/Cog/platforms/unix/vm/sqUnixITimerHeartbeat.c 2015-09-10 23:20:00 UTC (rev 3432)
+++ branches/Cog/platforms/unix/vm/sqUnixITimerHeartbeat.c 2015-09-11 16:29:40 UTC (rev 3433)
@@ -162,7 +162,8 @@
sqLong value = 0;
#if defined(__GNUC__) && ( defined(i386) || defined(__i386) || defined(__i386__) \
|| defined(i486) || defined(__i486) || defined (__i486__) \
- || defined(intel) || defined(x86) || defined(i86pc) )
+ || defined(intel) || defined(x86) || defined(i86pc) \
+ || defined(x86_64) || defined(__x86_64) || defined (__x86_64__))
__asm__ __volatile__ ("rdtsc" : "=A"(value));
#elif defined(__arm__) && (defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__))
/* tpr - do nothing for now; needs input from eliot to decide further */
@@ -255,23 +256,23 @@
usqLong
ioLocalMicrosecondsNow() { return currentUTCMicroseconds() + vmGMTOffset; };
-int
+sqInt
ioMSecs() { return millisecondClock; }
/* Note: ioMicroMSecs returns *milli*seconds */
-int ioMicroMSecs(void) { return microToMilliseconds(currentUTCMicroseconds()); }
+sqInt ioMicroMSecs(void) { return microToMilliseconds(currentUTCMicroseconds()); }
/* returns the local wall clock time */
-int
+sqInt
ioSeconds(void) { return get64(localMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioSecondsNow(void) { return ioLocalMicrosecondsNow() / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSeconds(void) { return get64(utcMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSecondsNow(void) { return currentUTCMicroseconds() / MicrosecondsPerSecond; }
/*
@@ -279,7 +280,7 @@
* On Unix use dpy->ioRelinquishProcessorForMicroseconds
*/
#if macintoshSqueak
-int
+sqInt
ioRelinquishProcessorForMicroseconds(int microSeconds)
{
long realTimeToWait;
Modified: branches/Cog/platforms/unix/vm/sqUnixITimerTickerHeartbeat.c
===================================================================
--- branches/Cog/platforms/unix/vm/sqUnixITimerTickerHeartbeat.c 2015-09-10 23:20:00 UTC (rev 3432)
+++ branches/Cog/platforms/unix/vm/sqUnixITimerTickerHeartbeat.c 2015-09-11 16:29:40 UTC (rev 3433)
@@ -258,23 +258,24 @@
usqLong
ioLocalMicrosecondsNow() { return currentUTCMicroseconds() + vmGMTOffset; };
-int
+sqInt
ioMSecs() { return millisecondClock; }
/* Note: ioMicroMSecs returns *milli*seconds */
-int ioMicroMSecs(void) { return microToMilliseconds(currentUTCMicroseconds()); }
+sqInt
+ioMicroMSecs(void) { return microToMilliseconds(currentUTCMicroseconds()); }
/* returns the local wall clock time */
-int
+sqInt
ioSeconds(void) { return get64(localMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioSecondsNow(void) { return ioLocalMicrosecondsNow() / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSeconds(void) { return get64(utcMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSecondsNow(void) { return currentUTCMicroseconds() / MicrosecondsPerSecond; }
/*
@@ -282,7 +283,7 @@
* On Unix use dpy->ioRelinquishProcessorForMicroseconds
*/
#if macintoshSqueak
-int
+sqInt
ioRelinquishProcessorForMicroseconds(int microSeconds)
{
long realTimeToWait;
Modified: branches/Cog/platforms/win32/vm/sqWin32Heartbeat.c
===================================================================
--- branches/Cog/platforms/win32/vm/sqWin32Heartbeat.c 2015-09-10 23:20:00 UTC (rev 3432)
+++ branches/Cog/platforms/win32/vm/sqWin32Heartbeat.c 2015-09-11 16:29:40 UTC (rev 3433)
@@ -53,7 +53,8 @@
static DWORD dwTimerPeriod = 0;
static DWORD timerID = 0;
-int ioOldMSecs()
+int
+ioOldMSecs()
{
/* Make sure the value fits into Squeak SmallIntegers */
#ifndef _WIN32_WCE
@@ -256,20 +257,20 @@
ioMSecs() { return millisecondClock; }
/* Note: ioMicroMSecs returns *milli*seconds */
-int
+sqInt
ioMicroMSecs(void) { return microToMilliseconds(ioUTCMicrosecondsNow()); }
/* returns the local wall clock time */
-int
+sqInt
ioSeconds(void) { return get64(localMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioSecondsNow(void) { return ioLocalMicrosecondsNow() / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSeconds(void) { return get64(utcMicrosecondClock) / MicrosecondsPerSecond; }
-int
+sqInt
ioUTCSecondsNow(void) { return ioUTCMicrosecondsNow() / MicrosecondsPerSecond; }
More information about the Vm-dev
mailing list