loongson-community / gcc

GCC source tree for Loongson
GNU General Public License v2.0
17 stars 1 forks source link

Backport Requst #39

Closed FlyGoat closed 6 years ago

FlyGoat commented 6 years ago

Hi @xiangzhai;

Recently, Paul Hua submitted a set of patches to mainline GCC[1] and Binutils. They should be merged within GCC-9.1 window.

I'm wondering if it's possible to backport these patches to our current loongson-community GCC tree for GCC-8.1 and Binutils 2.30, so Lemote Fedora28 can enjoy these enhancements?

Thanks.

[1]https://patchwork.ozlabs.org/cover/965401/

xiangzhai commented 6 years ago

OK, I will backport them :)

xiangzhai commented 6 years ago

Request for Review: Backport reorganize the loongson march and extensions instructions set to gcc-8.1.0

Hi @FlyGoat

I would like to backport the refactory loongson march and LoongISA to gcc-8.1.0.

The backport is mostly the same as the version that will be merged by upstream in 9, congratulations Xu Chenghua :)

Please review the patch, and run the testcase for double check. Thanks a lot!

Regards, Leslie Zhai

FlyGoat commented 6 years ago

Request for Review: Backport reorganize the loongson march and extensions instructions set to gcc-8.1.0

Hi @FlyGoat

I would like to backport the refactory loongson march and LoongISA to gcc-8.1.0.

The backport is mostly the same as the version that will be merged by upstream in 9, congratulations Xu Chenghua :) but except that:

  • gcc/config/mips/loongson.h Introduce new loongson-mmiintrin.h
  • gcc/config/mips/loongson.md Remove
  • gcc/config/mips/mips.h Replace LOONGSON3A with GS464
  • gcc/config/mips/mips.md Introduce new loongson-mmi.md
  • gcc/config/mips/mips.opt Introduce loongson-mmi
  • gcc/config/mips/mips-tables.opt Replace octeon with gs464, then increase Value
  • Replace if condition for target_flags |= MASK_LOONGSON_MMI

Please review the patch, and run the testcase for double check. Thanks a lot!

Regards, Leslie Zhai

Thanks for your work! I'm going to try it on GS464 and GS464E. However, it's hard for me to test on GS264E environment since my LoongsonPI is still repairing, and Loongson had not release board specific kernel for LoongsonPi with MSA instruction set support.

And should binutils also be patched? At least we should add the machine flag for gas and identify it in elf parser.

xiangzhai commented 6 years ago

However, it's hard for me to test on GS264E environment

I will run the regression testcase via cross compiler toolchain on 4.13.16-100.fc25.x86_64

And should binutils also be patched?

Ditto :) https://github.com/loongson-community/binutils-gdb/issues/3

FlyGoat commented 6 years ago

And should gcc/config/mips/t-st also be modified to fit the new multilib of -march?

xiangzhai commented 6 years ago

And should gcc/config/mips/t-st also be modified to fit the new multilib of -march?

you mean?

diff --git a/gcc/config/mips/t-st b/gcc/config/mips/t-st
index ec22d93..0791759 100644
--- a/gcc/config/mips/t-st
+++ b/gcc/config/mips/t-st
@@ -16,8 +16,8 @@
 # along with GCC; see the file COPYING3.  If not see
 # <http://www.gnu.org/licenses/>.

-MULTILIB_OPTIONS = march=loongson3a/march=loongson2e/march=loongson2f mabi=n32/mabi=32/mabi=64
-MULTILIB_DIRNAMES = 3a 2e 2f lib32 lib lib64
+MULTILIB_OPTIONS = march=loongson3a/march=loongson2e/march=loongson2f/march=gs464/march=gs464e/march=gs264e mabi=n32/mabi=32/mabi=64
+MULTILIB_DIRNAMES = 3a 2e 2f gs464 gs464e gs264e lib32 lib lib64

 MULTILIB_OSDIRNAMES  = march.loongson2e/mabi.n32=../lib32/2e
 MULTILIB_OSDIRNAMES += march.loongson2e/mabi.32=../lib/2e
@@ -28,6 +28,15 @@ MULTILIB_OSDIRNAMES += march.loongson2f/mabi.64=../lib64/2f
 MULTILIB_OSDIRNAMES += march.loongson3a/mabi.n32=../lib32/3a
 MULTILIB_OSDIRNAMES += march.loongson3a/mabi.32=../lib/3a
 MULTILIB_OSDIRNAMES += march.loongson3a/mabi.64=../lib64/3a
+MULTILIB_OSDIRNAMES += march.gs464/mabi.n32=../lib32/gs464
+MULTILIB_OSDIRNAMES += march.gs464/mabi.32=../lib/gs464
+MULTILIB_OSDIRNAMES += march.gs464/mabi.64=../lib64/gs464
+MULTILIB_OSDIRNAMES += march.gs464e/mabi.n32=../lib32/gs464e
+MULTILIB_OSDIRNAMES += march.gs464e/mabi.32=../lib/gs464e
+MULTILIB_OSDIRNAMES += march.gs464e/mabi.64=../lib64/gs464e
+MULTILIB_OSDIRNAMES += march.gs264e/mabi.n32=../lib32/gs264e
+MULTILIB_OSDIRNAMES += march.gs264e/mabi.32=../lib/gs264e
+MULTILIB_OSDIRNAMES += march.gs264e/mabi.64=../lib64/gs264e
 MULTILIB_OSDIRNAMES += mabi.n32=../lib32
 MULTILIB_OSDIRNAMES += mabi.32=../lib
 MULTILIB_OSDIRNAMES += mabi.64=../lib64
FlyGoat commented 6 years ago

And should gcc/config/mips/t-st also be modified to fit the new multilib of -march?

you mean?

Yeah... And some compiler internal issue appeared during build the GCC with patched Binutils. I don't know how to collect the build log. Is it convenient for you to give me a rsa public key so you can login to my machine via ssh and see what's going on?

Thanks

xiangzhai commented 6 years ago

Is it convenient for you to give me a rsa public key

email to you :)

xiangzhai commented 6 years ago

Unrecognizable insn:

...
../../../libgcc/libgcc2.c: In function '__absvti2':
../../../libgcc/libgcc2.c:271:1: error: unrecognizable insn:
 }
 ^
(insn/f 68 67 69 4 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":257 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:271:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__absvdi2':
../../../libgcc/libgcc2.c:232:1: error: unrecognizable insn:
 }
 ^
(insn/f 43 42 44 4 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":218 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:232:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__addvdi3':
../../../libgcc/libgcc2.c:84:1: error: unrecognizable insn:
 }
 ^
(insn/f 69 68 70 5 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":77 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:84:1: internal compiler error: in extract_insn, at recog.c:2304
...
../../../libgcc/libgcc2.c: In function '__addvti3':
../../../libgcc/libgcc2.c:109:1: error: unrecognizable insn:
 }
 ^
(insn/f 97 96 98 14 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":102 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:109:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__subvti3':
../../../libgcc/libgcc2.c:147:1: error: unrecognizable insn:
 }
 ^
(insn/f 97 96 98 14 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":140 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:147:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__subvdi3':
../../../libgcc/libgcc2.c:122:1: error: unrecognizable insn:
 }
 ^
(insn/f 69 68 70 5 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":115 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:122:1: internal compiler error: in extract_insn, at recog.c:2304
/home/dev/rpmbuild/BUILD/gcc-8.1.0/obj-mips64el-redhat-linux/./gcc/xgcc -B/home/dev/rpmbuild/BUILD/gcc-8.1.0/obj-mips64el-redhat-linux/./gcc/ -B/usr/mips64el-redhat-linux/bin/ -B/usr/mips64el-redhat-linux/lib/ -isystem /usr/mips64el-redhat-linux/include -isystem /usr/mips64el-redhat-linux/sys-include    -O2 -O3 -g -Wall -Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -march=loongson3a -fno-delete-null-pointer-checks -Wa,-mno-fix-loongson3-loads -minterlink-mips16 -O2  -O2 -O3 -g -Wall -Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -march=loongson3a -fno-delete-null-pointer-checks -Wa,-mno-fix-loongson3-loads -minterlink-mips16 -DIN_GCC    -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wno-format-security -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector   -fPIC -I. -I. -I../.././gcc -I../../../libgcc -I../../../libgcc/. -I../../../libgcc/../gcc -I../../../libgcc/../include  -DHAVE_CC_TLS  -o _clz.o -MT _clz.o -MD -MP -MF _clz.dep -DL_clz -c ../../../libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
../../../libgcc/libgcc2.c: In function '__negvti2':
../../../libgcc/libgcc2.c:212:1: error: unrecognizable insn:
 }
 ^
(insn/f 127 126 128 6 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":205 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:212:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__mulvdi3':
../../../libgcc/libgcc2.c:160:1: error: unrecognizable insn:
 }
 ^
(insn/f 44 43 45 3 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":153 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:160:1: internal compiler error: in extract_insn, at recog.c:2304
../../../libgcc/libgcc2.c: In function '__negvdi2':
../../../libgcc/libgcc2.c:187:1: error: unrecognizable insn:
 }
 ^
(insn/f 63 62 64 6 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":180 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:187:1: internal compiler error: in extract_insn, at recog.c:2304
/home/dev/rpmbuild/BUILD/gcc-8.1.0/obj-mips64el-redhat-linux/./gcc/xgcc -B/home/dev/rpmbuild/BUILD/gcc-8.1.0/obj-mips64el-redhat-linux/./gcc/ -B/usr/mips64el-redhat-linux/bin/ -B/usr/mips64el-redhat-linux/lib/ -isystem /usr/mips64el-redhat-linux/include -isystem /usr/mips64el-redhat-linux/sys-include    -O2 -O3 -g -Wall -Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -march=loongson3a -fno-delete-null-pointer-checks -Wa,-mno-fix-loongson3-loads -minterlink-mips16 -O2  -O2 -O3 -g -Wall -Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -march=loongson3a -fno-delete-null-pointer-checks -Wa,-mno-fix-loongson3-loads -minterlink-mips16 -DIN_GCC    -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wno-format-security -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fPIC -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector   -fPIC -I. -I. -I../.././gcc -I../../../libgcc -I../../../libgcc/. -I../../../libgcc/../gcc -I../../../libgcc/../include  -DHAVE_CC_TLS  -o _clzsi2.o -MT _clzsi2.o -MD -MP -MF _clzsi2.dep -DL_clzsi2 -c ../../../libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
../../../libgcc/libgcc2.c: In function '__mulvti3':
../../../libgcc/libgcc2.c:396:1: error: unrecognizable insn:
 }
 ^
(insn/f 459 458 460 36 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 8 [0x8])) [5  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (reg/f:DI 29 $sp) [5  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":277 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 8 [0x8])) [5  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (reg/f:DI 29 $sp) [5  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:396:1: internal compiler error: in extract_insn, at recog.c:2304
...
../../../libgcc/libgcc2.c: In function '__powitf2':
../../../libgcc/libgcc2.c:1888:1: error: unrecognizable insn:
 }
 ^
(insn/f 218 217 219 2 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 56 [0x38])) [1  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 48 [0x30])) [1  S8 A64])
                (reg:DI 28 $28))
        ]) "../../../libgcc/libgcc2.c":1878 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 56 [0x38])) [1  S8 A64])
                        (reg:DI 31 $31))
                    (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                (const_int 48 [0x30])) [1  S8 A64])
                        (reg:DI 28 $28))
                ])
            (nil))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:1888:1: internal compiler error: in extract_insn, at recog.c:2304
...
../../../libgcc/libgcc2.c: In function '__multc3':
../../../libgcc/libgcc2.c:2036:1: error: unrecognizable insn:
 }
 ^
(insn/f 2528 2527 2529 2 (parallel [
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 264 [0x108])) [4  S8 A64])
                (reg:DI 31 $31))
            (set (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                        (const_int 256 [0x100])) [4  S8 A64])
                (reg:DI 30 $fp))
        ]) "../../../libgcc/libgcc2.c":1974 -1
     (expr_list:REG_DEAD (reg:DI 31 $31)
        (expr_list:REG_DEAD (reg:DI 30 $fp)
            (expr_list:REG_FRAME_RELATED_EXPR (parallel [
                        (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                    (const_int 264 [0x108])) [4  S8 A64])
                            (reg:DI 31 $31))
                        (set/f (mem/c:DI (plus:DI (reg/f:DI 29 $sp)
                                    (const_int 256 [0x100])) [4  S8 A64])
                            (reg:DI 30 $fp))
                    ])
                (nil)))))
during RTL pass: cprop_hardreg
../../../libgcc/libgcc2.c:2036:1: internal compiler error: in extract_insn, at recog.c:2304

Bootstrap:

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/mips64el-redhat-linux/8/lto-wrapper
Target: mips64el-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,objc,obj-c++,fortran,go,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=both --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-gnu-indirect-function --with-long-double-128 --with-arch=mips64r2 --with-abi=64 --build=mips64el-redhat-linux
Thread model: posix
gcc version 8.1.0 20180502 (Red Hat 8.1.0-0.21) (GCC)

$ as -v
GNU assembler version 2.30 (mips64el-redhat-linux) ...

But gcc-6.4.3 on Linux x86_64.fc25 is not able to reproduce the issue https://github.com/loongson-community/binutils-gdb/issues/3#issuecomment-423791804 I will find the root cause.

FlyGoat commented 6 years ago

Thanks I'll keep this machine online.

 #include "gimple-expr.h"
          ^~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [Makefile:1110: tree-ssa-live.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../gcc/tree-ssa-ifcombine.c:27:
../../gcc/gimple.h:26:10: fatal error: gimple-expr.h: No such file or directory
 #include "gimple-expr.h"
          ^~~~~~~~~~~~~~~
compilation terminated.
xiangzhai commented 6 years ago

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86067

xiangzhai commented 6 years ago

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86067

Workaround bootstrap use gcc-6.4.3 or older https://github.com/loongson-community/binutils-gdb/issues/3#issuecomment-423791804

FlyGoat commented 6 years ago

I'm going to close this issue and create a new issue for the ICE problem.