Chung-Ju Wu <jasonw...@gmail.com> writes: >>> +mno-ctor-dtor >>> +Target Report RejectNegative >>> +Disable constructor/destructor feature. >> >> How is this option used? >> > > It effects how we link crt stuff. Refer to nds32.h: > > /* The option -mno-ctor-dtor can disable constructor/destructor feature > by applying different crt stuff. In the convention, crt0.o is the > startup file without constructor/destructor; > crt1.o, crti.o, crtbegin.o, crtend.o, and crtn.o are the > startup files with constructor/destructor. > Note that crt0.o, crt1.o, crti.o, and crtn.o are provided > by newlib/mculib/glibc/ublic, while crtbegin.o and crtend.o are > currently provided by GCC for nds32 target. > > For nds32 target so far: > If -mno-ctor-dtor, we are going to link > "crt0.o [user objects]". > If general cases, we are going to link > "crt1.o crtbegin1.o [user objects] crtend1.o". */ > #define STARTFILE_SPEC \ > " %{!mno-ctor-dtor:crt1.o%s;:crt0.o%s}" \ > " %{!mno-ctor-dtor:crtbegin1.o%s}" > #define ENDFILE_SPEC \ > " %{!mno-ctor-dtor:crtend1.o%s}"
Oops, sorry, I forgot to check the specs. > +mforce-fp-as-gp > +Target Report Mask(FORCE_FP_AS_GP) > +Prevent $fp being allocated during register allocation so that compiler is > able to force performing fp-as-gp optimization. Maybe: Prevent $fp from being used by the register allocator, so that it is always available for the fp-as-gp optimization. Looks good otherwise, thanks. Richard