]> git.saurik.com Git - apple/objc4.git/blob - runtime/objc-rtp-sym.s
objc4-371.1.tar.gz
[apple/objc4.git] / runtime / objc-rtp-sym.s
1 /*
2 * Copyright (c) 2004 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23 /*
24 This file is used to regenerate symbols for routines in the ObjC runtime pages.
25
26 Build this file with:
27 cc objc-rtp-syms.c -c -o objc-rtp-syms.o.temp
28 ld -seg1addr kRTPagesLo objc-rtp-syms.o.temp -r -o objc-rtp-syms.o
29 and then use `-sectcreate __DATA __commpage objc-rtp-syms.o` when linking.
30
31 IMPORTANT - declarations need to be declared in address order.
32 */
33
34 #undef OBJC_ASM
35 #define OBJC_ASM
36 #include "objc-rtp.h"
37
38 .text
39 .globl _objc_kIgnore_rtp
40 .org kRTAddress_ignoredSelector-kRTPagesLo // unnormalized with ld -seg1addr kRTPagesLo
41 _objc_kIgnore_rtp:
42 nop
43
44 // note that macro expansion does not work well with .org, had to go long hand - jml
45
46 .globl _objc_assign_strongCast_rtp
47 .org kRTAddress_objc_assign_strongCast-kRTPagesLo // unnormalized with ld -seg1addr kRTPagesLo
48 _objc_assign_strongCast_rtp:
49 nop
50
51 .globl _objc_assign_global_rtp
52 .org kRTAddress_objc_assign_global-kRTPagesLo // unnormalized with ld -seg1addr kRTPagesLo
53 _objc_assign_global_rtp:
54 nop
55
56 .globl _objc_assign_ivar_rtp
57 .org kRTAddress_objc_assign_ivar-kRTPagesLo // unnormalized with ld -seg1addr kRTPagesLo
58 _objc_assign_ivar_rtp:
59 nop
60
61 .globl _objc_msgSend_rtp
62 .org kRTAddress_objc_msgSend -kRTPagesLo // unnormalized with ld -seg1addr kRTPagesLo
63 _objc_msgSend_rtp:
64 nop
65
66 // Extra symbol at the end of the RTP area.
67 // This pacifies gdb and other debugging tools.
68 .globl _objc_msgSend_rtp_exit
69 .org kRTPagesHi - kRTPagesLo // unnormalized with ld -seg1adr kRTPagesLo
70
71 .data
72 .long 0