Changeset ba0e9631 in rtems

Timestamp:
08/10/18 05:34:03 (6 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
5, master
Children:
6695d02
Parents:
a36aa86
git-author:
Sebastian Huber <sebastian.huber@…> (08/10/18 05:34:03)
git-committer:
Sebastian Huber <sebastian.huber@…> (08/23/18 12:38:41)
Message:

score: Do not inline _Thread_Dispatch_enable()

This function is slighly too complex for inlining with two if
statements. The caller already needs a stack frame due to the potential
call to _Thread_Do_dispatch(). In _Thread_Dispatch_enable() the call to
_Thread_Do_dispatch() can be optimized to a tail call.

A text size comparision

(text size after patch - text size before patch)

/ text size before patch

on sparc/erc32 with SMP enabled showed these results:

Minimum -0.000697892 (fsdosfsname01.exe)
Median -0.00745021 (psxtimes01.exe)
Maximum -0.0233032 (spscheduler01.exe)

A text size comparision

text size after patch - text size before patch

on sparc/erc32 with SMP enabled showed these results:

Minimum -3312 (ada_sp09.exe)
Median -1024 (tm15.exe)
Maximum -592 (spglobalcon01.exe)

(No files)

Note: See TracChangeset for help on using the changeset viewer.