This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Don't allow ia64 unwind section to point to sectionin different files


>>> James E Wilson <wilson@specifixinc.com> 18.05.05 01:20:47 >>>
>The basic question here is whether it is ever OK for anything to come
>between the .proc and the function label.

Per ias, it is OK for code and/or data to come in there, but no unwind directives. For code like

.text
.proc test1, test2, test3
.prologue
.save ar.lc, r16
	mov		r16 = ar.lc
test2:
.save pr, r17
	mov		r17 = pr
test1:	
.save.b 0b00000010, r18
	mov		r18 = b1
test3:
	br.ret.sptk	rp
.endp test1, test2, test3

ias gives

unwind.s(14) : error A2145: the first unwind directive must point to the procedure test1 entry point

basically meaning that they check that no unwind stuff exists between .proc and the main entry point (and the region size covered
by the unwind info would then be set to just the range from the main entry point through .endp).

Further (regarding the original issue discussed here), they generate both relocations against the symbol, not the section. However, I too believe this is wrong, but I'm not sure if gas should intentionally behave differently here. Maybe that's another point to be discussed with them before settling on a solution.

Jan



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]