brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.5 KiB · bf3cb1e Raw
189 lines · plain
1// RUN: %clang -c -o %t %s2// RUN: %llvm_jitlink -preload libobjc.A.dylib %t3//4// REQUIRES: jit-compatible-osx-swift-runtime5//6// Test that Objective-C class and instance methods work.7 8	.section	__TEXT,__text,regular,pure_instructions9	.build_version macos, 12, 0	sdk_version 12, 010	.p2align	2                               ; -- Begin function +[ZeroGen classZero]11"+[ZeroGen classZero]":                 ; @"\01+[ZeroGen classZero]"12	.cfi_startproc13; %bb.0:14	sub	sp, sp, #16                     ; =1615	.cfi_def_cfa_offset 1616	str	x0, [sp, #8]17	str	x1, [sp]18	mov	w0, #019	add	sp, sp, #16                     ; =1620	ret21	.cfi_endproc22                                        ; -- End function23	.p2align	2                               ; -- Begin function -[ZeroGen objZero]24"-[ZeroGen objZero]":                   ; @"\01-[ZeroGen objZero]"25	.cfi_startproc26; %bb.0:27	sub	sp, sp, #16                     ; =1628	.cfi_def_cfa_offset 1629	str	x0, [sp, #8]30	str	x1, [sp]31	mov	w0, #032	add	sp, sp, #16                     ; =1633	ret34	.cfi_endproc35                                        ; -- End function36	.globl	_main                           ; -- Begin function main37	.p2align	238_main:                                  ; @main39	.cfi_startproc40; %bb.0:41	sub	sp, sp, #48                     ; =4842	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill43	add	x29, sp, #32                    ; =3244	.cfi_def_cfa w29, 1645	.cfi_offset w30, -846	.cfi_offset w29, -1647	stur	wzr, [x29, #-4]48	adrp	x8, _OBJC_CLASSLIST_REFERENCES_$_@PAGE49	str	x8, [sp, #8]                    ; 8-byte Folded Spill50	ldr	x0, [x8, _OBJC_CLASSLIST_REFERENCES_$_@PAGEOFF]51	bl	_objc_alloc_init52	ldr	x8, [sp, #8]                    ; 8-byte Folded Reload53	str	x0, [sp, #16]54	ldr	x0, [x8, _OBJC_CLASSLIST_REFERENCES_$_@PAGEOFF]55	adrp	x8, _OBJC_SELECTOR_REFERENCES_@PAGE56	ldr	x1, [x8, _OBJC_SELECTOR_REFERENCES_@PAGEOFF]57	bl	_objc_msgSend58	cbz	w0, LBB2_259; %bb.1:60	mov	w8, #161	stur	w8, [x29, #-4]62	b	LBB2_563LBB2_2:64	ldr	x0, [sp, #16]65	adrp	x8, _OBJC_SELECTOR_REFERENCES_.2@PAGE66	ldr	x1, [x8, _OBJC_SELECTOR_REFERENCES_.2@PAGEOFF]67	bl	_objc_msgSend68	cbz	w0, LBB2_469; %bb.3:70	mov	w8, #171	stur	w8, [x29, #-4]72	b	LBB2_573LBB2_4:74	stur	wzr, [x29, #-4]75LBB2_5:76	ldur	w0, [x29, #-4]77	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload78	add	sp, sp, #48                     ; =4879	ret80	.cfi_endproc81                                        ; -- End function82	.section	__TEXT,__objc_classname,cstring_literals83l_OBJC_CLASS_NAME_:                     ; @OBJC_CLASS_NAME_84	.asciz	"ZeroGen"85 86	.section	__TEXT,__objc_methname,cstring_literals87l_OBJC_METH_VAR_NAME_:                  ; @OBJC_METH_VAR_NAME_88	.asciz	"classZero"89 90	.section	__TEXT,__objc_methtype,cstring_literals91l_OBJC_METH_VAR_TYPE_:                  ; @OBJC_METH_VAR_TYPE_92	.asciz	"i16@0:8"93 94	.section	__DATA,__objc_const95	.p2align	3                               ; @"_OBJC_$_CLASS_METHODS_ZeroGen"96__OBJC_$_CLASS_METHODS_ZeroGen:97	.long	24                              ; 0x1898	.long	1                               ; 0x199	.quad	l_OBJC_METH_VAR_NAME_100	.quad	l_OBJC_METH_VAR_TYPE_101	.quad	"+[ZeroGen classZero]"102 103	.p2align	3                               ; @"_OBJC_METACLASS_RO_$_ZeroGen"104__OBJC_METACLASS_RO_$_ZeroGen:105	.long	1                               ; 0x1106	.long	40                              ; 0x28107	.long	40                              ; 0x28108	.space	4109	.quad	0110	.quad	l_OBJC_CLASS_NAME_111	.quad	__OBJC_$_CLASS_METHODS_ZeroGen112	.quad	0113	.quad	0114	.quad	0115	.quad	0116 117	.section	__DATA,__objc_data118	.globl	_OBJC_METACLASS_$_ZeroGen       ; @"OBJC_METACLASS_$_ZeroGen"119	.p2align	3120_OBJC_METACLASS_$_ZeroGen:121	.quad	_OBJC_METACLASS_$_NSObject122	.quad	_OBJC_METACLASS_$_NSObject123	.quad	__objc_empty_cache124	.quad	0125	.quad	__OBJC_METACLASS_RO_$_ZeroGen126 127	.section	__TEXT,__objc_methname,cstring_literals128l_OBJC_METH_VAR_NAME_.1:                ; @OBJC_METH_VAR_NAME_.1129	.asciz	"objZero"130 131	.section	__DATA,__objc_const132	.p2align	3                               ; @"_OBJC_$_INSTANCE_METHODS_ZeroGen"133__OBJC_$_INSTANCE_METHODS_ZeroGen:134	.long	24                              ; 0x18135	.long	1                               ; 0x1136	.quad	l_OBJC_METH_VAR_NAME_.1137	.quad	l_OBJC_METH_VAR_TYPE_138	.quad	"-[ZeroGen objZero]"139 140	.p2align	3                               ; @"_OBJC_CLASS_RO_$_ZeroGen"141__OBJC_CLASS_RO_$_ZeroGen:142	.long	0                               ; 0x0143	.long	8                               ; 0x8144	.long	8                               ; 0x8145	.space	4146	.quad	0147	.quad	l_OBJC_CLASS_NAME_148	.quad	__OBJC_$_INSTANCE_METHODS_ZeroGen149	.quad	0150	.quad	0151	.quad	0152	.quad	0153 154	.section	__DATA,__objc_data155	.globl	_OBJC_CLASS_$_ZeroGen           ; @"OBJC_CLASS_$_ZeroGen"156	.p2align	3157_OBJC_CLASS_$_ZeroGen:158	.quad	_OBJC_METACLASS_$_ZeroGen159	.quad	_OBJC_CLASS_$_NSObject160	.quad	__objc_empty_cache161	.quad	0162	.quad	__OBJC_CLASS_RO_$_ZeroGen163 164	.section	__DATA,__objc_classrefs,regular,no_dead_strip165	.p2align	3                               ; @"OBJC_CLASSLIST_REFERENCES_$_"166_OBJC_CLASSLIST_REFERENCES_$_:167	.quad	_OBJC_CLASS_$_ZeroGen168 169	.section	__DATA,__objc_selrefs,literal_pointers,no_dead_strip170	.p2align	3                               ; @OBJC_SELECTOR_REFERENCES_171_OBJC_SELECTOR_REFERENCES_:172	.quad	l_OBJC_METH_VAR_NAME_173 174	.p2align	3                               ; @OBJC_SELECTOR_REFERENCES_.2175_OBJC_SELECTOR_REFERENCES_.2:176	.quad	l_OBJC_METH_VAR_NAME_.1177 178	.section	__DATA,__objc_classlist,regular,no_dead_strip179	.p2align	3                               ; @"OBJC_LABEL_CLASS_$"180l_OBJC_LABEL_CLASS_$:181	.quad	_OBJC_CLASS_$_ZeroGen182 183	.section	__DATA,__objc_imageinfo,regular,no_dead_strip184L_OBJC_IMAGE_INFO:185	.long	0186	.long	64187 188.subsections_via_symbols189