----- On Feb 9, 2016, at 1:31 PM, Marek Vasut [email protected] wrote: > On Tuesday, February 09, 2016 at 07:22:38 PM, Mathieu Desnoyers wrote: >> ----- On Feb 9, 2016, at 11:55 AM, Marek Vasut [email protected] wrote: >> > Add support for the Altera NIOS2 CPU archirecture. The atomic operations >> > are handled by the GCC. The memory barriers on this systems are entirely >> > trivial too, since the CPU does not support SMP at all. >> > >> > Signed-off-by: Marek Vasut <[email protected]> >> > --- >> > LICENSE | 1 + >> > README.md | 1 + >> > configure.ac | 1 + >> > urcu/arch/nios2.h | 40 ++++++++++++++++++++++++++++++++++++++++ >> > urcu/uatomic/nios2.h | 32 ++++++++++++++++++++++++++++++++ >> > 5 files changed, 75 insertions(+) >> > create mode 100644 urcu/arch/nios2.h >> > create mode 100644 urcu/uatomic/nios2.h >> > >> > diff --git a/LICENSE b/LICENSE >> > index 3147094..a06fdcc 100644 >> > --- a/LICENSE >> > +++ b/LICENSE >> > @@ -45,6 +45,7 @@ compiler.h >> > arch/s390.h >> > uatomic/alpha.h >> > uatomic/mips.h >> > +uatomic/nios2.h >> > uatomic/s390.h >> > system.h >> > >> > diff --git a/README.md b/README.md >> > index f6b290f..6fe9c1e 100644 >> > --- a/README.md >> > +++ b/README.md >> > >> > @@ -43,6 +43,7 @@ Currently, the following architectures are supported: >> > - S390, S390x >> > - ARM 32/64 >> > - MIPS >> > >> > + - NIOS2 >> > >> > - Alpha >> > - ia64 >> > - Sparcv9 32/64 >> > >> > diff --git a/configure.ac b/configure.ac >> > index 39a7777..71a7d71 100644 >> > --- a/configure.ac >> > +++ b/configure.ac >> > @@ -124,6 +124,7 @@ AS_CASE([$host_cpu], >> > >> > [arm*], [ARCHTYPE="arm"], >> > [aarch64], [ARCHTYPE="aarch64"], >> > [mips*], [ARCHTYPE="mips"], >> > >> > + [nios2*], [ARCHTYPE="nios2"], >> > >> > [tile*], [ARCHTYPE="tile"], >> > [hppa*], [ARCHTYPE="hppa"], >> > [ARCHTYPE="unknown"] >> > >> > diff --git a/urcu/arch/nios2.h b/urcu/arch/nios2.h >> > new file mode 100644 >> > index 0000000..030d1bc >> > --- /dev/null >> > +++ b/urcu/arch/nios2.h >> > @@ -0,0 +1,40 @@ >> > +#ifndef _URCU_ARCH_NIOS2_H >> > +#define _URCU_ARCH_NIOS2_H >> > + >> > +/* >> > + * arch_mips.h: trivial definitions for the NIOS2 architecture. >> >> mips -> nops2 > > Oops :-) Now it's clear where I started. Fixed, nice catch.
of course, I meant "nios2" here (not nops2). It's a nice typo though ;) Thanks, Mathieu > >> > + * >> > + * Copyright (c) 2016 Marek Vasut <[email protected]> >> > + * >> > + * This library is free software; you can redistribute it and/or >> > + * modify it under the terms of the GNU Lesser General Public >> > + * License as published by the Free Software Foundation; either >> > + * version 2.1 of the License, or (at your option) any later version. >> > + * >> > + * This library is distributed in the hope that it will be useful, >> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> > + * Lesser General Public License for more details. >> > + * >> > + * You should have received a copy of the GNU Lesser General Public >> > + * License along with this library; if not, write to the Free Software >> > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> > 02110-1301 USA + */ >> > + >> > +#include <urcu/compiler.h> >> > +#include <urcu/config.h> >> > +#include <urcu/syscall-compat.h> >> > + >> > +#ifdef __cplusplus >> > +extern "C" { >> > +#endif >> > + >> > +#define cmm_mb() __asm__ __volatile__ ("":::"memory") >> >> please change for: >> >> #define cmm_mb() cmm_barrier() >> >> to re-use the cmm_barrier macro from urcu/compiler.h > > Nice! > >> The rest looks good, can you prepare an updated patch ? > > Done, thanks! -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com _______________________________________________ lttng-dev mailing list [email protected] http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
