diff options
author | Hyungwoo Yang <hyungwoo.yang@intel.com> | 2019-01-30 12:30:47 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-02-26 05:09:12 -0800 |
commit | decc9452e981a7c8ce5c6b8983061a054057c615 (patch) | |
tree | eaea7bba6491f96bc06a77e2af2fd43d4b210894 /include/task_filter.h | |
parent | 0a3f44e4f508d0c6a96519e6db97b2f2fd4bfb23 (diff) | |
download | chrome-ec-decc9452e981a7c8ce5c6b8983061a054057c615.tar.gz |
ish: save/restore FPU context only for the task uses FPU
Currently we save/retore FPU H/W context for every task on
every contxt switch. This hurts overall performance of ISH.
This patch allows save and restore FPU H/W context only for
a task that declares it uses FPU.
BRANCH=none
BUG=none
TEST=verified in Atlas platform
Change-Id: Ic2f0bbf59f655661e2dd788c688edc4e83068c1c
Signed-off-by: Hyungwoo Yang <hyungwoo.yang@intel.com>
Reviewed-on: https://chromium-review.googlesource.com/1448818
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Hyungwoo Yang <hyungwoo.yang@intel.corp-partner.google.com>
Reviewed-by: Jett Rink <jettrink@chromium.org>
Diffstat (limited to 'include/task_filter.h')
-rw-r--r-- | include/task_filter.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/include/task_filter.h b/include/task_filter.h index af80194e7f..b83b530f52 100644 --- a/include/task_filter.h +++ b/include/task_filter.h @@ -13,21 +13,21 @@ #define TASK_NOTEST_RO TASK_NOTEST #define TASK_TEST_RO TASK_TEST #define TASK_ALWAYS_RO TASK_ALWAYS -#define TASK_NOTEST_RW(n, r, d, s) -#define TASK_TEST_RW(n, r, d, s) -#define TASK_ALWAYS_RW(n, r, d, s) +#define TASK_NOTEST_RW(...) +#define TASK_TEST_RW(...) +#define TASK_ALWAYS_RW(...) #else /* SECTION_IS_RW */ #define TASK_NOTEST_RW TASK_NOTEST #define TASK_TEST_RW TASK_TEST #define TASK_ALWAYS_RW TASK_ALWAYS -#define TASK_NOTEST_RO(n, r, d, s) -#define TASK_TEST_RO(n, r, d, s) -#define TASK_ALWAYS_RO(n, r, d, s) +#define TASK_NOTEST_RO(...) +#define TASK_TEST_RO(...) +#define TASK_ALWAYS_RO(...) #endif /* excludes non-base tasks for test build */ #ifdef TEST_BUILD -#define TASK_NOTEST(n, r, d, s) +#define TASK_NOTEST(...) #define TASK_TEST TASK #else #define TASK_NOTEST TASK @@ -42,7 +42,7 @@ /* If included directly from Makefile, dump task list. */ #ifdef _MAKEFILE -#define TASK(n, r, d, s) n +#define TASK(n, ...) n CONFIG_TASK_LIST CONFIG_TEST_TASK_LIST CONFIG_CTS_TASK_LIST #endif |