Hi, guys
I encounter a gcc failure when I build mysql on opensuse[1]
5.6.17/storage/perfschema/pfs_account.cc:320:1: error: could not split insn
[ 1245s] }
[ 1245s] ^
[ 1245s] (insn 482 1770 1461 (parallel [
[ 1245s] (set (reg:SI 1 x1 [orig:167 D.16835 ] [167])
[ 1245s] (mem/v:SI (reg/f:DI 0 x0 [orig:166 D.16844 ] [166])
[-1 S4 A32]))
[ 1245s] (set (mem/v:SI (reg/f:DI 0 x0 [orig:166 D.16844 ] [166])
[-1 S4 A32])
[ 1245s] (unspec_volatile:SI [
[ 1245s] (ior:SI (mem/v:SI (reg/f:DI 0 x0 [orig:166
D.16844 ] [166]) [-1 S4 A32])
[ 1245s] (const_int 0 [0]))
[ 1245s] (const_int 5 [0x5])
[ 1245s] ] UNSPECV_ATOMIC_OP))
[ 1245s] (clobber (reg:CC 66 cc))
[ 1245s] (clobber (reg:SI 4 x4))
[ 1245s] (clobber (reg:SI 3 x3))
[ 1245s] ])
/home/abuild/rpmbuild/BUILD/mysql-5.6.17/include/my_atomic.h:217 1814
{atomic_fetch_orsi}
[ 1245s] (expr_list:REG_UNUSED (reg:CC 66 cc)
[ 1245s] (expr_list:REG_UNUSED (reg:SI 4 x4)
[ 1245s] (expr_list:REG_UNUSED (reg:SI 3 x3)
[ 1245s] (nil)))))
[ 1245s]
/home/abuild/rpmbuild/BUILD/mysql-5.6.17/storage/perfschema/pfs_account.cc:320:1:
internal compiler error: in final_scan_insn, at final.c:2897
Ihis bug could be fixed by Michael's patch(r217076):
2014-11-04 Michael Collison <[email protected]>
* config/aarch64/iterators.md (lconst_atomic): New mode attribute
to support constraints for CONST_INT in atomic operations.
* config/aarch64/atomics.md
(atomic_<atomic_optab><mode>): Use lconst_atomic constraint.
(atomic_nand<mode>): Likewise.
(atomic_fetch_<atomic_optab><mode>): Likewise.
(atomic_fetch_nand<mode>): Likewise.
(atomic_<atomic_optab>_fetch<mode>): Likewise.
(atomic_nand_fetch<mode>): Likewise.
Michael's patch could be applied on the top of gcc 4.8 branch except the
gcc/ChangeLog.
Is it possible backport this patch to gcc 4.8 branch?
I am new to here, I am not sure if I need send the patch with modified
ChangeLog. Sorry if I break the rules.
regards
bamvor
[1] https://bugzilla.opensuse.org/show_bug.cgi?id=896667