change log for rtems (2011-09-22)
rtems-vc at rtems.org
rtems-vc at rtems.org
Thu Sep 22 08:10:42 UTC 2011
*sh*:
2011-09-22 Sebastian Huber <sebastian.huber at embedded-brains.de>
PR 1914/cpukit
* rtems/score/cpu.h: Document CPU_TIMESTAMP_USE_STRUCT_TIMESPEC,
CPU_TIMESTAMP_USE_INT64, and CPU_TIMESTAMP_USE_INT64_INLINE.
M 1.89 cpukit/score/cpu/no_cpu/ChangeLog
M 1.36 cpukit/score/cpu/no_cpu/rtems/score/cpu.h
diff -u rtems/cpukit/score/cpu/no_cpu/ChangeLog:1.88 rtems/cpukit/score/cpu/no_cpu/ChangeLog:1.89
--- rtems/cpukit/score/cpu/no_cpu/ChangeLog:1.88 Sun Jul 24 18:43:10 2011
+++ rtems/cpukit/score/cpu/no_cpu/ChangeLog Thu Sep 22 02:16:05 2011
@@ -1,3 +1,9 @@
+2011-09-22 Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+ PR 1914/cpukit
+ * rtems/score/cpu.h: Document CPU_TIMESTAMP_USE_STRUCT_TIMESPEC,
+ CPU_TIMESTAMP_USE_INT64, and CPU_TIMESTAMP_USE_INT64_INLINE.
+
2011-07-24 Joel Sherrill <joel.sherrill at oarcorp.com>
* cpu.c: Remove /*PAGE markers which were interpreted by a long dead
diff -u rtems/cpukit/score/cpu/no_cpu/rtems/score/cpu.h:1.35 rtems/cpukit/score/cpu/no_cpu/rtems/score/cpu.h:1.36
--- rtems/cpukit/score/cpu/no_cpu/rtems/score/cpu.h:1.35 Thu Oct 21 17:14:20 2010
+++ rtems/cpukit/score/cpu/no_cpu/rtems/score/cpu.h Thu Sep 22 02:16:06 2011
@@ -356,6 +356,76 @@
#define CPU_STRUCTURE_ALIGNMENT
/**
+ * @defgroup CPUTimestamp Processor Dependent Timestamp Support
+ *
+ * This group assists in issues related to timestamp implementation.
+ *
+ * The port must choose exactly one of the following defines:
+ * - #define CPU_TIMESTAMP_USE_STRUCT_TIMESPEC TRUE
+ * - #define CPU_TIMESTAMP_USE_INT64 TRUE
+ * - #define CPU_TIMESTAMP_USE_INT64_INLINE TRUE
+ *
+ * Performance of int64_t versus struct timespec
+ * =============================================
+ *
+ * On PowerPC/psim, inlined int64_t saves ~50 instructions on each
+ * _Thread_Dispatch operation which results in a context switch.
+ * This works out to be about 10% faster dispatches and 7.5% faster
+ * blocking semaphore obtains. The following numbers are in instructions
+ * and from tm02 and tm26.
+ *
+ * timespec int64 inlined int64
+ * dispatch: 446 446 400
+ * blocking sem obtain: 627 626 581
+ *
+ * On SPARC/sis, inlined int64_t shows the same percentage gains.
+ * The following numbers are in microseconds and from tm02 and tm26.
+ *
+ * timespec int64 inlined int64
+ * dispatch: 59 61 53
+ * blocking sem obtain: 98 100 92
+ *
+ * Inlining appears to have a tendency to increase the size of
+ * some executables.
+ * Not inlining reduces the execution improvement but does not seem to
+ * be an improvement on the PowerPC and SPARC. The struct timespec
+ * and the executables with int64 not inlined are about the same size.
+ */
+
+/**
+ * @ingroup CPUTimestamp
+ *
+ * Selects the timestamp implementation using struct timespec.
+ *
+ * Port Specific Information:
+ *
+ * XXX document implementation including references if appropriate
+ */
+#define CPU_TIMESTAMP_USE_STRUCT_TIMESPEC TRUE
+
+/**
+ * @ingroup CPUTimestamp
+ *
+ * Selects the timestamp implementation using int64_t and no inlined methods.
+ *
+ * Port Specific Information:
+ *
+ * XXX document implementation including references if appropriate
+ */
+#define CPU_TIMESTAMP_USE_INT64 TRUE
+
+/**
+ * @ingroup CPUTimestamp
+ *
+ * Selects the timestamp implementation using int64_t and inlined methods.
+ *
+ * Port Specific Information:
+ *
+ * XXX document implementation including references if appropriate
+ */
+#define CPU_TIMESTAMP_USE_INT64_INLINE TRUE
+
+/**
* @defgroup CPUEndian Processor Dependent Endianness Support
*
* This group assists in issues related to processor endianness.
--
Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20110922/81a60143/attachment-0001.html>
More information about the vc
mailing list