ira-build.c (sort_conflict_id_map): Don't call qsort if num is 0, as ira_object_id_ma...
authorJakub Jelinek <jakub@redhat.com>
Mon, 30 Jun 2014 07:33:41 +0000 (09:33 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Mon, 30 Jun 2014 07:33:41 +0000 (09:33 +0200)
* ira-build.c (sort_conflict_id_map): Don't call
qsort if num is 0, as ira_object_id_map might be NULL, or 1.

From-SVN: r212136

gcc/ChangeLog
gcc/ira-build.c

index 4cc167ab98af960ebfa5565807b1349677f3e7e0..a316102edcb262acc348c76d0abcf4b768fcecc1 100644 (file)
@@ -1,3 +1,8 @@
+2014-06-30  Jakub Jelinek  <jakub@redhat.com>
+
+       * ira-build.c (sort_conflict_id_map): Don't call
+       qsort if num is 0, as ira_object_id_map might be NULL, or 1.
+
 2014-06-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>
 
        * loop-invariant.c (get_inv_cost): Handle register class.
index 000c25c83a7ff381f1c44209225647b84d654ac5..ee20c09fcb67439deaed2ddc10aeb8144048d6fc 100644 (file)
@@ -2821,8 +2821,9 @@ sort_conflict_id_map (void)
       FOR_EACH_ALLOCNO_OBJECT (a, obj, oi)
        ira_object_id_map[num++] = obj;
     }
-  qsort (ira_object_id_map, num, sizeof (ira_object_t),
-        object_range_compare_func);
+  if (num > 1)
+    qsort (ira_object_id_map, num, sizeof (ira_object_t),
+          object_range_compare_func);
   for (i = 0; i < num; i++)
     {
       ira_object_t obj = ira_object_id_map[i];