[PATCH] D111617: [RISCV] Lazily add RVV C intrinsics.
Kito Cheng via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Jan 16 02:04:07 PST 2022
kito-cheng added a comment.
TL;DR:
------
- Binary size of clang increase ~200k, which is +0.07% for debug build and +0.13% for release build.
- Single file compilation speed up ~33x speed up for debug build and ~8.5x speed up for release build
- Regression time reduce ~10% (`ninja check-all`, enable all targets)
Header size change
------------------
| size | LoC |
------------------------------
Before | 4,434,725 | 69,749 |
After | 6,140 | 162 |
Single File Compilation Time
----------------------------
Testcase:
#include <riscv_vector.h>
vint32m1_t test_vadd_vv_vfloat32m1_t(vint32m1_t op1, vint32m1_t op2, size_t vl) {
return vadd(op1, op2, vl);
}
Debug build:
------------
Before:
real 0m19.352s
user 0m19.252s
sys 0m0.092s
After:
real 0m0.576s
user 0m0.552s
sys 0m0.024s
~33x speed up for debug build
Release build:
--------------
Before:
real 0m0.773s
user 0m0.741s
sys 0m0.032s
After:
real 0m0.092s
user 0m0.080s
sys 0m0.012s
~8.5x speed up for release build
Regression time
---------------
Note: the failed case is `tools/llvm-debuginfod-find/debuginfod.test` which is unrelated to this patch.
Debug build
-----------
Before:
Testing Time: 1358.38s
Skipped : 11
Unsupported : 446
Passed : 75767
Expectedly Failed: 190
Failed : 1
After
Testing Time: 1220.29s
Skipped : 11
Unsupported : 446
Passed : 75767
Expectedly Failed: 190
Failed : 1
Release build
-------------
Before:
Testing Time: 381.98s
Skipped : 12
Unsupported : 1407
Passed : 74765
Expectedly Failed: 176
Failed : 1
After:
Testing Time: 346.25s
Skipped : 12
Unsupported : 1407
Passed : 74765
Expectedly Failed: 176
Failed : 1
Binary size of clang
--------------------
Debug build
-----------
Before
text data bss dec hex filename
335261851 12726004 552812 348540667 14c64efb bin/clang
After
text data bss dec hex filename
335442803 12798708 552940 348794451 14ca2e53 bin/clang
+253K, +0.07% code size
Release build
-------------
Before
text data bss dec hex filename
144123975 8374648 483140 152981763 91e5103 bin/clang
After
text data bss dec hex filename
144255762 8447296 483268 153186326 9217016 bin/clang
+204K, +0.13%
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D111617/new/
https://reviews.llvm.org/D111617
More information about the cfe-commits
mailing list