blob: 49a12e1613247e018154fd3676464658fef7c497 [file] [log] [blame]
kma@webrtc.org55cd78c2012-11-17 00:22:46 +00001/*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11#ifndef WEBRTC_SYSTEM_WRAPPERS_INTERFACE_ASM_DEFINES_H_
12#define WEBRTC_SYSTEM_WRAPPERS_INTERFACE_ASM_DEFINES_H_
13
kma@webrtc.org7877b0f2012-12-12 23:22:13 +000014#if defined(__linux__) && defined(__ELF__)
15.section .note.GNU-stack,"",%progbits
16#endif
17
kma@webrtc.org55cd78c2012-11-17 00:22:46 +000018// Define the macros used in ARM assembly code, so that for Mac or iOS builds
19// we add leading underscores for the function names.
20#ifdef __APPLE__
21.macro GLOBAL_FUNCTION name
22.global _\name
23.endm
24.macro DEFINE_FUNCTION name
25_\name:
26.endm
kma@webrtc.org47829112013-01-24 01:37:33 +000027.macro CALL_FUNCTION name
28bl _\name
29.endm
kma@webrtc.org16d540e2013-01-25 03:18:05 +000030.macro GLOBAL_LABEL name
31.global _\name
32.endm
kma@webrtc.org55cd78c2012-11-17 00:22:46 +000033#else
34.macro GLOBAL_FUNCTION name
35.global \name
36.endm
37.macro DEFINE_FUNCTION name
38\name:
39.endm
kma@webrtc.org47829112013-01-24 01:37:33 +000040.macro CALL_FUNCTION name
41bl \name
42.endm
kma@webrtc.org16d540e2013-01-25 03:18:05 +000043.macro GLOBAL_LABEL name
44.global \name
45.endm
kma@webrtc.org55cd78c2012-11-17 00:22:46 +000046#endif
47
kma@webrtc.org7877b0f2012-12-12 23:22:13 +000048.text
49
kma@webrtc.org55cd78c2012-11-17 00:22:46 +000050#endif // WEBRTC_SYSTEM_WRAPPERS_INTERFACE_COMPILE_ASSERT_H_