1276789Sdim/*===-- sync_fetch_and_add_8.S - ------------------------------------------===//
2276789Sdim *
3276789Sdim *                     The LLVM Compiler Infrastructure
4276789Sdim *
5276789Sdim * This file is dual licensed under the MIT and the University of Illinois Open
6276789Sdim * Source Licenses. See LICENSE.TXT for details.
7276789Sdim *
8276789Sdim *===----------------------------------------------------------------------===//
9276789Sdim *
10276789Sdim * This file implements the __sync_fetch_and_add_8 function for the ARM
11276789Sdim * architecture.
12276789Sdim *
13276789Sdim *===----------------------------------------------------------------------===*/
14276789Sdim
15276789Sdim#include "sync-ops.h"
16276789Sdim
17276789Sdim#if __ARM_ARCH_PROFILE != 'M'
18276789Sdim#define add_8(rD_LO, rD_HI, rN_LO, rN_HI, rM_LO, rM_HI) \
19276789Sdim    adds rD_LO, rN_LO, rM_LO ; \
20276789Sdim    adc rD_HI, rN_HI, rM_HI
21276789Sdim
22276789SdimSYNC_OP_8(add_8)
23276789Sdim#endif
24276789Sdim
25