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