[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gcc (Re: porting?)



> > Long branches are possible on 68020+, but PC-relative code with long
> > offsets is not possible. For example:
> > 
> > 	move.l	addr(PC),d0
> > 
> > 'addr' must be 16-bit, what means a distance of -32768 up to +32767
> > bytes.
> 
> At least gas 2.8.1 which I am using assembles that as long offset. Same 
> thing with address register. If short mode is wanted one must use
> move.l   addr:w(pc),d0 (or in mit syntax move.l  pc@addr:w,d0). There's 
> also --base-size-default-(16/32) and --disp-size-default-(16/32) but they 
> don't seem to work or I'm doing something wrong...

Hmm, quite strange. Devpac refuses to compile long offsets to (PC) mode
and I was previously quite sure that it is correct. 

--
Konrad M.Kokoszkiewicz
mail: draco@mi.com.pl
http://www.orient.uw.edu.pl/~conradus/
http://www.obta.uw.edu.pl/~draco/

** Ea natura multitudinis est,
** aut servit humiliter, aut superbe dominatur (Liv. XXIV,25)
*************************************************************
** U pospolstwa normalne jest, ze albo sluzy ono unizenie,
** albo bezczelnie sie panoszy.