Re: Bug#837359: ocaml: FTBFS on -fPIE binNMU on armhf - test failure
On Wed, Nov 02, 2016 at 02:22:00AM +0000, Ximin Luo wrote:
>...
Thanks a lot for debugging this.
> let emit_load_symbol_addr dst s =
> if !Clflags.pic_code then begin
> [..]
> end else if !arch > ARMv6 && not !Clflags.dlcode && !fastcode_flag then begin
> ` movw {emit_reg dst}, #:lower16:{emit_symbol s}\n`;
> ` movt {emit_reg dst}, #:upper16:{emit_symbol s}\n`;
> 2
>
> Note that !arch in ocaml means "get the current value of the mutable reference 'arch'".
The armel port has a lower baseline than armhf, this would explain the
difference between these ports.
> It looks like they already wrote the working code, it's just not being emitted here. So I just need to figure out how to make Cflags.pic_code true, which shouldn't be too hard. I will try this tomorrow when I'm less tired.
asmcomp/amd64/arch.ml:let pic_code = ref true
asmcomp/arm/arch.ml:let pic_code = ref false
cu
Adrian
[1] https://patches.ubuntu.com/o/ocaml/ocaml_4.02.3-6ubuntu2.patch
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
Reply to: