Home | History | Annotate | Line # | Download | only in atomic
      1 #	$NetBSD: Makefile.inc,v 1.4 2019/06/01 12:42:27 maxv Exp $
      2 
      3 .for op in add and cas nand or sub swap xor
      4 sizes=32
      5 .if "${MLIBDIR}" != ""
      6 .if ${COMMON_MACHINE_ARCH} == "riscv64"
      7 sizes+=64
      8 .endif
      9 .elif ${MACHINE_ARCH} == "riscv64"
     10 sizes+=64
     11 .endif
     12 .for sz in ${sizes}
     13 SRCS.atomic+=	atomic_${op}_${sz}.S
     14 .endfor
     15 .for sz in 8 16
     16 SRCS.atomic+=	atomic_${op}_${sz}_cas.c
     17 .endfor
     18 .endfor
     19 SRCS.atomic+=	membar_ops.S
     20 SRCS.atomic+=	atomic_cas_by_cas32.c
     21 
     22 .if defined(LIB) && (${LIB} != "kern" && ${LIB} != "rump")
     23 
     24 SRCS.atomic+=	atomic_init_cas.c			\
     25 		atomic_c11_compare_exchange_cas_16.c    \
     26 		atomic_c11_compare_exchange_cas_8.c
     27 
     28 .endif #LIB
     29 
     30 .if defined(LIB) && ${LIB} == "c"
     31 SRCS.atomic+=	atomic_and_16_nv_cas.c atomic_and_8_nv_cas.c
     32 .endif
     33 
     34 SRCS+=	${SRCS.atomic}
     35