[Bug 1517093] Re: HTM builtins aren't treated as compiler barriers on powerpc

Launchpad Bug Tracker 1517093 at bugs.launchpad.net
Wed Feb 10 14:17:20 UTC 2016


This bug was fixed in the package gcc-4.8 - 4.8.4-2ubuntu1~14.04.1

---------------
gcc-4.8 (4.8.4-2ubuntu1~14.04.1) trusty-proposed; urgency=medium

  * SRU:
  * Fix auto-loading of gdb pretty printers. LP: #1446828.
  * Fix PR libstdc++/56158, taken from the trunk.
    Addresses: #804521. LP: #1514309.
  * Backport PR target/64579 and PR target/67281 from the trunk (HTM fixes).
    LP: #1517093.

 -- Matthias Klose <doko at ubuntu.com>  Wed, 18 Nov 2015 17:48:36 +0100

** Changed in: gcc-4.8 (Ubuntu Trusty)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-4.8 in Ubuntu.
https://bugs.launchpad.net/bugs/1517093

Title:
  HTM builtins aren't treated as compiler barriers on powerpc

Status in gcc-4.8 package in Ubuntu:
  Fix Released
Status in gcc-5 package in Ubuntu:
  Fix Released
Status in gcc-4.8 source package in Trusty:
  Fix Released

Bug description:
  ---Problem Description---
  HTM builtins aren't treated as compiler barriers on powerpc

  Contact Information = bergner at us.ibm.com

  ---Steps to Reproduce---

   This bug is a mirror of the (fixed) upstream FSF bugzilla https://gcc.gnu.org/PR67281
  All relevant information regarding the bug and the fix can be found there.  This bugzilla is to track backporting of the fix to the GCC 4.8, 4.9 and 5 based compilers.

  Userspace tool common name: GCC
  Userspace rpm: gcc-4.8, gcc-4.9 and gcc-5

  == Comment: #1
  The fix for the FSF GCC 5 branch was committed with:

  r228846 | bergner | 2015-10-15 11:38:47 -0500 (Thu, 15 Oct 2015) | 16
  lines

          Backport from mainline
          2015-10-14  Peter Bergner  <bergner at vnet.ibm.com>
                              Torvald Riegel  <triegel at redhat.com>

          PR target/67281
          * config/rs6000/htm.md (UNSPEC_HTM_FENCE): New.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): Rename define_insns from this...
          (*tabort, *tabort<wd>c, *tabort<wd>ci, *tbegin, *tcheck, *tend,
          *trechkpt, *treclaim, *tsr, *ttest): ...to this.  Add memory barrier.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): New define_expands.
          * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
          __TM_FENCE__ for htm.
          * doc/extend.texi: Update documentation for htm builtins.

  == Comment: #2
  The fix for the FSF GCC 4.9 branch was committed with:

  r228847 | bergner | 2015-10-15 11:40:14 -0500 (Thu, 15 Oct 2015) | 16
  lines

          Backport from mainline
          2015-10-14  Peter Bergner  <bergner at vnet.ibm.com>
                              Torvald Riegel  <triegel at redhat.com>

          PR target/67281
          * config/rs6000/htm.md (UNSPEC_HTM_FENCE): New.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): Rename define_insns from this...
          (*tabort, *tabort<wd>c, *tabort<wd>ci, *tbegin, *tcheck, *tend,
          *trechkpt, *treclaim, *tsr, *ttest): ...to this.  Add memory barrier.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): New define_expands.
          * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
          __TM_FENCE__ for htm.
          * doc/extend.texi: Update documentation for htm builtins.

  == Comment: #3
  Since the FSF 4.8 branch is closed, here is a backport of the fix along with another
  simple HTM wrong code bug to GCC 4.8.

          Backport from mainline
          2015-10-14  Peter Bergner  <bergner at vnet.ibm.com>
                              Torvald Riegel  <triegel at redhat.com>

          PR target/67281
          * config/rs6000/htm.md (UNSPEC_HTM_FENCE): New.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): Rename define_insns from this...
          (*tabort, *tabort<wd>c, *tabort<wd>ci, *tbegin, *tcheck, *tend,
          *trechkpt, *treclaim, *tsr, *ttest): ...to this.  Add memory barrier.
          (tabort, tabort<wd>c, tabort<wd>ci, tbegin, tcheck, tend,
          trechkpt, treclaim, tsr, ttest): New define_expands.
          * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
          __TM_FENCE__ for htm.
          * doc/extend.texi: Update documentation for htm builtins.

          Backport from mainline:
          2015-08-03  Peter Bergner  <bergner at vnet.ibm.com>

          * config/rs6000/htm.md (tabort.): Restrict the source operand to
          using a base register.

  Acceptance creterium: No regressions in the testsuite, and the new
  test passes.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-4.8/+bug/1517093/+subscriptions



More information about the foundations-bugs mailing list