[2/4] gcc: fix build on riscv64
Commit Message
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
---
lfs/gcc | 2 ++
..._use_log2_from_cheader_without_namespace.patch | 15 +++++++++++++++
2 files changed, 17 insertions(+)
create mode 100644 src/patches/gcc/gcc-13.1.0-riscv_use_log2_from_cheader_without_namespace.patch
@@ -212,6 +212,8 @@ $(subst %,%_BLAKE2,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc/gcc-13.1.0-riscv_use_log2_from_cheader_without_namespace.patch
+
@mkdir $(DIR_SRC)/gcc-build
cd $(DIR_APP) && sed -i 's/install_to_$$(INSTALL_DEST) //' libiberty/Makefile.in
new file mode 100644
@@ -0,0 +1,15 @@
+diff -Naur gcc-13.1.0.org/gcc/config/riscv/genrvv-type-indexer.cc gcc-13.1.0/gcc/config/riscv/genrvv-type-indexer.cc
+--- gcc-13.1.0.org/gcc/config/riscv/genrvv-type-indexer.cc 2023-04-26 09:09:39.000000000 +0200
++++ gcc-13.1.0/gcc/config/riscv/genrvv-type-indexer.cc 2023-08-02 11:28:53.615913583 +0200
+@@ -115,9 +115,9 @@
+ if (sew == eew)
+ elmul_log2 = lmul_log2;
+ else if (sew > eew)
+- elmul_log2 = lmul_log2 - std::log2 (sew / eew);
++ elmul_log2 = lmul_log2 - log2 (sew / eew);
+ else /* sew < eew */
+- elmul_log2 = lmul_log2 + std::log2 (eew / sew);
++ elmul_log2 = lmul_log2 + log2 (eew / sew);
+
+ if (float_p)
+ return floattype (eew, elmul_log2);