zhoujing
3bd573e3b3
[VENTUS][fix] Remove codes and fix wrong register error in workitem.s
2024-02-01 14:56:01 +08:00
zhoujing
03759b1bed
[VENTUS][fix] Fix get_local_id builtin function implementation
2024-02-01 14:56:01 +08:00
zhoujingya
efd82b9d86
[ #56 ][fix] Fix the implementation of get_local_linear_id
2024-02-01 14:56:01 +08:00
zhoujingya
e04c1a6ec7
[ #56 ][fix] Fix workitem function(enqueued_local_size & local_linear_id) bugs in libclc
...
Support get_enqueued_local_size function and fix the calculation of get_local_linear_id
2024-02-01 14:56:01 +08:00
zhoujingya
49c039a902
Merge pull request #89 from THU-DSP-LAB/eliminate_call_frame
...
[VENTUS][fix] Fix framelowering and calculation method of stack offset
2024-02-01 14:54:42 +08:00
zhoujingya
6b17accc5f
Merge pull request #70 from THU-DSP-LAB/resource_manage
...
[VENTUS][fix] Fix the mechanism of statistical register resources
2024-02-01 13:17:45 +08:00
zhoujingya
965f8c1fb6
Merge branch 'main' into eliminate_call_frame
2024-02-01 13:15:03 +08:00
zhoujingya
a3fc326ce4
Merge pull request #53 from THU-DSP-LAB/libclc-precision
...
[VENTUS][fix] Use customized clz function rather than builtins
2024-01-31 19:19:54 +08:00
zhoujing
aaf1c41a21
[VENTUS][fix] Fix clzl function implementation in floatdidf
2024-01-31 16:12:58 +08:00
zhoujingya
dfd2affa51
[VENTUS][fix] Fix float precision issue in libclc for ventus
...
There are many potential precision bugs in libclc, especially the functions
under `libclc/riscv32/lib/compiler-rt` directory.
2024-01-31 16:12:31 +08:00
zhoujingya
91b9888732
Merge pull request #66 from THU-DSP-LAB/39_parameter_types
...
[fix] Fix scalar and vector kernel parameter bugs
2024-01-24 11:46:59 +08:00
zhoujingya
0b7be4b4a5
Merge branch 'main' into 39_parameter_types
2024-01-24 11:43:08 +08:00
zhoujingya
a87bae445c
Merge pull request #49 from THU-DSP-LAB/instructions-remove
...
[VENTUS][fix] Remove instructions not supported by hardware
2024-01-24 09:41:33 +08:00
wangqinfan
3085032da8
Merge pull request #51 from THU-DSP-LAB/regexti
...
[#50 ][feat] Add regexti instruction support
2024-01-23 13:21:26 +08:00
qinfan
5a4e7b3c6c
[VENTUS][fix] Fix test file
...
Fix test file.
2024-01-23 10:25:46 +08:00
qinfan
71caf2361b
[VENTUS][fix] Fix register extension
...
Fix register extension.
2024-01-23 09:59:51 +08:00
zhoujingya
7adec4402a
[VENTUS][fix] Support the regexti instruction
...
Support the regexti instruction with or, xor, sub, and, setne, seteq, add test file.
2024-01-23 09:59:51 +08:00
zhoujingya
b793a55a42
Merge pull request #95 from THU-DSP-LAB/clamp
...
[VENTUS][fix] Fix clamp function
2024-01-22 22:27:44 +08:00
zhoujingya
8099fdef1c
Merge pull request #96 from THU-DSP-LAB/mad_hi
...
[VENTUS][fix] Add mul_hi function
2024-01-22 22:27:23 +08:00
qinfan
eb8de4e634
[VENTUS][fix] Add mul_hi function
...
Add mul_hi function.
2024-01-22 16:55:53 +08:00
qinfan
9181e1a435
[VENTUS][fix] Fix clamp function
...
Fix clamp function.
2024-01-22 16:44:35 +08:00
Jules-Kong
5b0ffc2cfa
Merge pull request #88 from THU-DSP-LAB/ctz
...
[VENTUS][fix] Add ctz function implementation
2024-01-15 14:37:15 +08:00
zhoujingya
7e8e66058c
[VENTUS][fix] Add ctz function implementation
...
Add ctz function implementation.
2024-01-11 14:21:05 +08:00
qinfan
93c99240db
[VENTUS][fix] Fix the calculation of stack size
...
Fix the calculation of stack size.
2023-12-25 13:26:25 +08:00
qinfan
6be8ad9c24
[VENTUS][docs] Add test file
...
Add test file.
2023-12-22 17:51:05 +08:00
qinfan
d809d3a2bd
[VENTUS][fix] Fix the Offset of private variable offset on stack
...
Fix the Offset of private variable offset on stack.
2023-12-22 16:47:19 +08:00
qinfan
755797e27c
[VENTUS][fix] Fix framelowering and calculation method of stack offset
...
1. Add VMV_V_X in emitEpilogue.
2. Change all the positive numbers added by TP to negative numbers(in LowerCall).
3. Fix the LowerCall function to generate correct store instruction transferring the function parameters.
4. Fix hasReservedCallFrame function to return false.
5. Align the convention between caller and callee in the case of passing parameters by stack.
6. Change the stack offset calculation method of TP.
7. Unify the calculation of TP stack and SP stack offset.
8. Node that needing to manually modify the calculation of sp offset in the workitem.S. Since the growth direction of the stack is different from that of the traditional RISCV, it is now stipulated that for both the SP stack and the TP stack, the data is stored where the stack pointer is not offset.
9. There is a SPAdj check in eliminateFrameIndex function. but we don't need this value at all so that adding a getSPAdjust function to return zero.
10. V33 is a wrong value when parameters pushed to TP stack so there must be a MV instruction to refresh V33 after ADJCALLSTACKDOWN.
2023-12-20 17:03:01 +08:00
qinfan
e35b2e4fed
[VENTUS][fix] Distinguish the resource usage of each kernel function
...
Distinguish the resource usage of each kernel function in the same source file.
2023-12-14 17:18:20 +08:00
zhoujingya
e4582536e7
Merge pull request #79 from THU-DSP-LAB/libclc
2023-12-07 11:35:08 +08:00
zhoujingya
12bb90bd11
[VENTUS][fix] Add libclc function parameter vector size equal 3 support
...
In the current libclc library, when the function parameter contains vec3, the library
does not overload the builtin function and implement it, so we need to add related
declaration
For cts test cases:
* prefetch
* async_copy_global_to_local
* async_copy_local_to_global
2023-12-07 10:19:28 +08:00
qinfan
304a2c1284
[VENTUS][fix] Fix the mechanism of statistical register resources
...
1. Fix the bug of repeated calculation of register resources.
2. Add resource calculation with stack register.
2023-11-28 11:29:13 +08:00
zhoujingya
d32d735ea4
[VENTUS][fix] Remove instructions not supported by hardware
...
These instructions included belows:
* float load/store instructions
* vfmv instruction
* "Single-Width Floating-Point/Integer Type-Convert Instructions" in RISCV manual
2023-11-24 17:26:50 +08:00
zhoujingya
f85215d671
Revert "[VENTUS][fix] Add subregclass and flag to distinguish GPR and GPRF32" ( #68 )
...
This reverts commit 5e424e2b64
.
2023-11-24 15:18:18 +08:00
Mifuns
e4c88939fe
[ #60 ][feat] Support barrier with memory scope parameter ( #63 )
...
Co-authored-by: qinfan <qinfan.wang@terapines.com>
2023-11-22 16:02:16 +08:00
qinfan
5f09d814e1
[ #39 ][docs] Add test file
...
Add test file.
2023-11-09 13:39:57 +08:00
qinfan
6b002e6c5d
[ #39 ][fix] Modify the code failed to merge
...
Modify the code failed to merge.
2023-11-09 13:31:31 +08:00
qinfan
99a81dd407
[ #39 ][fix] Fix scalar and vector kernel parameter bugs
...
The alignment method for kernel function parameters finally determined by the software.
2023-11-09 13:18:48 +08:00
qinfan
8dfd3561c4
[VENTUS][RISCV][feat] Legalized vector parameters
...
Summary: LegaLegalized vector parameters, but not been added FileCheck now.
Test Plan: Legalized vector parameters
Differential Revision: http://www.tpt.com/D740
2023-11-09 13:09:54 +08:00
zhoujingya
1e0fad0aef
[ #54 ][fix] Fix integer compare instructions pattern
2023-11-08 14:56:10 +08:00
zhoujingya
2ae501e91b
[VENTUS][fix] Add test file
2023-10-26 09:46:07 +08:00
qinfan
8fb493873a
[VENTUS][RISCV][fix] Add subregclass and flag to distinguish GPR and GPRF32
...
Add subregclass and flag to distinguish GPR and GPRF32
2023-10-26 09:46:07 +08:00
oywd
685c959186
Merge pull request #37 from THU-DSP-LAB/es-dev
...
[#36 ][fix] fix the bug that the calclation of global id is err
2023-10-19 17:25:13 +08:00
ouyangxiao
ebb43f7877
[VENTUS][fix] Fix the bug that the calculation of global id is incorrect
2023-10-19 14:46:45 +08:00
zhoujingya
5c2738eb80
[VENTUS][fix] Fix address space mapping error for constant address
2023-10-16 17:30:49 +08:00
zhoujingya
f48875e9fe
Revert "[VENTUS][fix] Add subregclass and flag to distinguish GPR and GPRF32"
...
This reverts commit 5e424e2b64
.
2023-10-16 16:45:15 +08:00
qinfan
5e424e2b64
[VENTUS][fix] Add subregclass and flag to distinguish GPR and GPRF32
...
Summary: fix float COPY instruction bug
Test Plan: fix float COPY instruction bug
Reviewers: zhoujing
Differential Revision: http://www.tpt.com/D747
2023-10-16 13:51:10 +08:00
zhoujingya
294b5b4e5e
[VENTUS][fix] Remove illegal VMV_X_S/VFMV_F_S instructions' definition and patterns
...
https://github.com/THU-DSP-LAB/llvm-project/issues/31
2023-10-10 17:30:47 +08:00
zhoujingya
de2295fa43
[VENTUS][fix] Fix flw/fsw instruction pattern match bug
2023-10-10 16:05:57 +08:00
zhoujingya
f9a20984b5
[VENTUS][fix] Comment out illegal fmv.w.x instruction and change vmv instructions' format
...
https://github.com/THU-DSP-LAB/llvm-project/issues/30
2023-10-09 14:04:55 +08:00
zhoujingya
2b376d146a
Revert "[VENTUS][RISCV][fix] Fix the float COPY instruction bug"
...
This reverts commit 80a3ef9b04
.
2023-10-08 17:35:20 +08:00