As I don't have commit access, I'd pleased if you could commit it. :) Thank you very much in advance.
On Sun, Jun 16, 2013 at 05:18:30PM -0400, Rafael Espíndola wrote: > yes, LGTM. > > On 16 June 2013 16:23, Patrick Wildt <[email protected]> wrote: > > Is the following ok? > > > > --- lib/Basic/Targets.cpp.orig Sun Jun 16 21:08:39 2013 > > +++ lib/Basic/Targets.cpp Sun Jun 16 21:20:01 2013 > > @@ -3534,7 +3534,9 @@ class ARMTargetInfo : public TargetInfo { > > // the kernel which on armv6 and newer uses ldrex and strex. The net > > result > > // is that if we assume the kernel is at least as recent as the > > hardware, > > // it is safe to use atomic instructions on armv6 and newer. > > - if (T.getOS() != llvm::Triple::Linux && T.getOS() != > > llvm::Triple::FreeBSD) > > + if (T.getOS() != llvm::Triple::Linux && > > + T.getOS() != llvm::Triple::FreeBSD && > > + T.getOS() != llvm::Triple::Bitrig) > > return false; > > StringRef ArchName = T.getArchName(); > > if (T.getArch() == llvm::Triple::arm) { > > --- test/CodeGen/linux-arm-atomic.c.orig Sun Jun 16 22:17:54 2013 > > +++ test/CodeGen/linux-arm-atomic.c Sun Jun 16 22:17:19 2013 > > @@ -2,6 +2,7 @@ > > // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | > > FileCheck %s > > // RUN: %clang_cc1 %s -emit-llvm -o - -triple=thumbv7-unknown-linux | > > FileCheck %s > > // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-freebsd | > > FileCheck %s > > +// RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-bitrig | > > FileCheck %s > > > > typedef int _Atomic_word; > > _Atomic_word exchange_and_add(volatile _Atomic_word *__mem, int __val) { > > > > On Sun, Jun 16, 2013 at 04:08:48PM -0400, Rafael Espíndola wrote: > >> Needs a testcase. OK with it. > >> > >> On 16 June 2013 16:05, Patrick Wildt <[email protected]> wrote: > >> > Hi, > >> > > >> > as of r184040, atomics on ARM were enabled for FreeBSD. Bitrig also > >> > suffers > >> > the issue, therefore I've attached a patch which enables those for > >> > Bitrig. > >> > > >> > I'd like to ask you to commit it. > >> > > >> > Thanks in advance, > >> > Patrick Wildt > >> > > >> > --- lib/Basic/Targets.cpp.orig Sun Jun 16 21:08:39 2013 > >> > +++ lib/Basic/Targets.cpp Sun Jun 16 21:20:01 2013 > >> > @@ -3534,7 +3534,9 @@ class ARMTargetInfo : public TargetInfo { > >> > // the kernel which on armv6 and newer uses ldrex and strex. The > >> > net result > >> > // is that if we assume the kernel is at least as recent as the > >> > hardware, > >> > // it is safe to use atomic instructions on armv6 and newer. > >> > - if (T.getOS() != llvm::Triple::Linux && T.getOS() != > >> > llvm::Triple::FreeBSD) > >> > + if (T.getOS() != llvm::Triple::Linux && > >> > + T.getOS() != llvm::Triple::FreeBSD && > >> > + T.getOS() != llvm::Triple::Bitrig) > >> > return false; > >> > StringRef ArchName = T.getArchName(); > >> > if (T.getArch() == llvm::Triple::arm) { > >> > > >> > _______________________________________________ > >> > cfe-commits mailing list > >> > [email protected] > >> > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
