https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82398
Bug ID: 82398 Summary: error: qsort comparator non-negative on sorted output: 2 in fill_vec_av_set at gcc/sel-sched.c:3725 Product: gcc Version: unknown Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org Target Milestone: --- Host: x86_64-pc-linux-gnu Target: ppc64le-linux-gnu Using cross-compiler one can see after Alexander's commit r253295: $ ppc64-linux-gnu-gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/torture/pr56195.c -Ofast -fselective-scheduling /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/torture/pr56195.c: In function ‘fn’: /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/torture/pr56195.c:31:1: error: qsort comparator non-negative on sorted output: 2 } ^ during RTL pass: sched1 /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/torture/pr56195.c:31:1: internal compiler error: qsort checking failed 0x57afe6 qsort_chk_error .././../gcc/vec.c:222 0x128f3b5 qsort_chk(void*, unsigned long, unsigned long, int (*)(void const*, void const*)) .././../gcc/vec.c:274 0xb11ca3 vec<_expr*, va_heap, vl_embed>::qsort(int (*)(void const*, void const*)) .././../gcc/vec.h:973 0xb11ca3 vec<_expr*, va_heap, vl_ptr>::qsort(int (*)(void const*, void const*)) .././../gcc/vec.h:1735 0xb11ca3 fill_vec_av_set .././../gcc/sel-sched.c:3725 0xb14493 fill_ready_list .././../gcc/sel-sched.c:4022 0xb14493 find_best_expr .././../gcc/sel-sched.c:4382 0xb14493 fill_insns .././../gcc/sel-sched.c:5539 0xb165b0 schedule_on_fences .././../gcc/sel-sched.c:7356 0xb165b0 sel_sched_region_2 .././../gcc/sel-sched.c:7494 0xb18ae1 sel_sched_region_1 .././../gcc/sel-sched.c:7536 0xb18ae1 sel_sched_region(int) .././../gcc/sel-sched.c:7637 0xb190c9 run_selective_scheduling() .././../gcc/sel-sched.c:7713 0xaf182d rest_of_handle_sched .././../gcc/sched-rgn.c:3715 0xaf182d execute .././../gcc/sched-rgn.c:3825