- Apr 15, 2024
-
-
Kito Cheng authored
Save CSRs in interrupt functions
-
Kito Cheng authored
Function attribute for standard vector calling convention variant: riscv_vector_cc
-
- Feb 02, 2024
-
-
Kito Cheng authored
Document constraint "s"
-
Kito Cheng authored
-
- Feb 01, 2024
-
-
Christoph Müllner authored
We have a list of macros, that should be extended for each new extension. Let's rephrase the section such, that the wording targets all extensions that are supported by compilers and remove the incomplete list. Signed-off-by:Christoph Müllner <christoph.muellner@vrull.eu>
-
Kito Cheng authored
Standard vector calling convention variant will only enabled when function has vector argument or returing value by default, however user may also want to invoke function without that during a vectorized loop at some situation, but it will cause a huge performance penalty due to vector register store/restore. So user can declare function with this riscv_vector_cc attribute like below, that could enforce function will use standard vector calling convention variant. ```c void foo() __attribute__((riscv_vector_cc)); ```
-
Fangrui Song authored
"s" can be used to create an artificial reference for linker garbage collection, or define sections to hold symbol addresses. "S" does not work for a preemptible symbol in GCC while "s" does.
-
- Jan 23, 2024
-
-
Kito Cheng authored
Add missing `__riscv_q` predefine to riscv-c-api.md
-
Roland McGrath authored
The Q extension and its `__riscv_q` predefined macro are missing from the list, but compilers do actually define this alongside `__riscv_f` and `__riscv_d`. Signed-off-by:Roland McGrath <mcgrathr@google.com>
-
- Jan 01, 2024
-
-
Kuan-Wei Chiu authored
Replace 'complier' with 'compiler'.
-
- Dec 15, 2023
-
-
Kito Cheng authored
Fix typo: replace errof with error
-
Piyou Chen authored
-
- Dec 09, 2023
-
-
Christoph Müllner authored
This fixes a simple copy-paste mistake in the orc_b_32 emulation comment for rv64. Signed-off-by:Christoph Müllner <christoph.muellner@vrull.eu>
-
- Dec 07, 2023
-
-
Jivan Hakobyan authored
This patch defines the intrinsic function API for the Zimop extension. Co-authored-by:
lyut <lyudovikos.nersisyan@ispras.ru> Co-authored-by:
ln8-8 <73429801+ln8-8@users.noreply.github.com> Signed-off-by:
ln8-8 <73429801+ln8-8@users.noreply.github.com>
-
- Dec 05, 2023
-
-
Kito Cheng authored
Fix the __riscv_clmul* intrinsics.
-
Kito Cheng authored
Locality for prefetch built-in proposal
-
Liao Shihua authored
These should be __riscv_clmul*(uintxlen_t rs1, uintxlen_t rs2). There are only 1 argument.
-
Piyou Chen authored
-
Piyou Chen authored
-
Piyou Chen authored
-
Piyou Chen authored
-
- Nov 30, 2023
-
-
Craig Topper authored
These should be __riscv_sha512sum0r and __riscv_sha512sum1r. There are only 2 instructions not 4.
-
- Nov 27, 2023
-
-
Tsukasa OI authored
`__riscv_64e` is defined analogously to `__riscv_32e`. Changing the meaning of `__riscv_32e` should not cause any problems since if we are just testing for existence of the `E` extension, there is `__riscv_e` preprocessor macro.
-
- Nov 21, 2023
-
-
Kito Cheng authored
Add zicsr and zifencei to extension test macros
-
Daniel Mangum authored
Adds the __riscv_zicsr and __riscv_zifencei extension test macros to the existing table. Signed-off-by:Daniel Mangum <georgedanielmangum@gmail.com>
-
Craig Topper authored
-
Craig Topper authored
-
Craig Topper authored
-
Craig Topper authored
This is a proposal for scalar crypto intrinsics for the Zk* extensions. I've removed the recommendation to use 'long' for XLEN. There's nothing guaranteeing that 'long' is XLEN. For example, if we were to support ILP32 on RV64, 'long' would become 32 bits while XLEN would still be 64 bits. Other design decisions are spelled out in the document. Some text has been copied from #23. One open question is whether we should emulate 64-bit intrinsics on RV32 where it is feasible. This could be useful for the sha512 intrinsics and some others.
-
- Nov 06, 2023
-
-
Kito Cheng authored
Adding target attribute for function.
-
- Oct 30, 2023
-
-
Kito Cheng authored
- Because we don't has any spec to define how to resolve, also it's confusing among target, target_clones and target_version.
-
Kito Cheng authored
- Also same behavior for target attribute specfied twice.
-
- Oct 26, 2023
-
-
Kito Cheng authored
- Add link for mapping symobl. - File scope -> translation unit scope
-
- Oct 14, 2023
-
-
Kito Cheng authored
- Drop some sentence not belong this spec
-
- Oct 13, 2023
-
-
Kito Cheng authored
Document operand modifier
-
Kito Cheng authored
Zawrs: Define extension availability macro
-
Kito Cheng authored
- Drop `disable a set of features or extensions`, we don't have syntax to drop now. - Tweak description for `arch=`: describe two different cases of `arch=` clearly. - Drop last sentence, that will happened on multi-version funciton but not happen in `target` attribute.
-
- Sep 18, 2023
-
-
Kito Cheng authored
command line option.
-
Kito Cheng authored
Co-authored-by:
Luís Marques <luis@luismarques.eu> Signed-off-by:
Kito Cheng <kito.cheng@gmail.com>
-
Kito Cheng authored
- Fix the syntax to allow more than two ATTR. - Speicfy the interactions among `arch`, `tune`, and `cpu`. - Describe the behavior if same ATTR appear more than once. - Mention compiler should always generate the function even the attribute compiler will generate same code without attribute.
-