Home > Error Cannot > Error Cannot Represent Relocation Type Bfd_reloc_rva

Error Cannot Represent Relocation Type Bfd_reloc_rva

I can not compile my own win32 units because of the following compilation errror: (~/FreePascal/src/fpc)-$ make clean (~/FreePascal/src/fpc)-$ make OS_TARGET=win32 all ... .... ..... Added: branches/x32/gcc/testsuite/gcc.target/i386/pr49860-1.c - copied unchanged from r176926, branches/x32/gcc/testsuite/gcc.target/i386/pr47446-3.c Removed: branches/x32/gcc/testsuite/gcc.target/i386/pr47446-3.c Modified: branches/x32/gcc/testsuite/ChangeLog.x32 Comment 11 UroŇ° Bizjak 2011-08-02 06:36:28 UTC Fixed in binutils [1], not a gcc bug. [1] http://sourceware.org/ml/binutils/2011-08/msg00010.html Comment 12 X32 != LP64. > > I guess the code above speaks for itself. > > > Assembler is done on purpose to catch problems like this. > > This is artificial No, since Pmode is still in > > DImode and DImode addresses are *valid* addresses. http://optimisersonpc.com/error-cannot/error-cannot-represent-relocation-type-bfd-reloc-x86-64-32s.html

In another word, if a memory operand is OK for ia32, it must be OK for x32. Description H.J. In > > another word, if a memory operand is OK for ia32, it must be OK > > for x32. > > Can you prevent x32 to generate DImode symbols? We ask that you be polite and do the same. http://mingw-users.1079350.n2.nabble.com/Error-using-dlltool-td2913097.html

With 1.0.10 it worked fine, but I >>didn't try if it works with it right now, because I need the >>-dUseFPImage option, and it doesn't work with older fpcs. >>I'm getting With 1.0.10 it worked fine, but I > didn't try if it works with it right now, because I need the > -dUseFPImage option, and it doesn't work with older fpcs. And if I can use the 1.9.1, do I have to compile my own win32 units, or I can use these: ftp://gd.tuwien.ac.at/languages/pascal/fpc/snapshot/v11/win32-i386/ Are these for fpc1.9.1?

Am I right? > > I tried to compile the units (1.9.1) by hand: > cd src/fpc; make clean; make OS_TARGET=win32 all > > I get this error: > make[4]: Entering I'm doing this because I must > build my projects to win32 too. If it is valid for TARGET_32BIT, it should be valid for TARGET_X32. > Your patch just papers over this fact. http://p.sf.net/sfu/businessobjects_______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists.

I have these binaries: i686-pc-mingw32-addr2line i686-pc-mingw32-dlltool i686-pc-mingw32-objcopy i686-pc-mingw32-size i686-pc-mingw32-ar i686-pc-mingw32-dllwrap i686-pc-mingw32-objdump i686-pc-mingw32-strings i686-pc-mingw32-as i686-pc-mingw32-ld i686-pc-mingw32-ranlib i686-pc-mingw32-strip i686-pc-mingw32-c++filt i686-pc-mingw32-nm i686-pc-mingw32-readelf i686-pc-mingw32-windres and all of them are symlinked to my $PATH. Bug49860 - [x32] Error: cannot represent relocation type BFD_RELOC_64 in x32 mode Summary: [x32] Error: cannot represent relocation type BFD_RELOC_64 in x32 mode Status: RESOLVED INVALID Alias: None Product: gcc Classification: GBiz is too! Latest News Stories: Docker 1.0Heartbleed Redux: Another Gaping Wound in Web Encryption UncoveredThe Next Circle of Hell: Unpatchable SystemsGit 2.0.0 ReleasedThe Linux Foundation Announces Core Infrastructure http://lists.lazarus.freepascal.org/pipermail/lazarus/2003-December/014994.html For this testcase, x32 should generate > very similar code to ia32, except for additional 8 registers.

Free forum by Nabble Edit this page Fedora Mailing-Lists Sign In Sign Up Sign In Sign Up Manage this list 2016 November October September August July June May April March February If it is valid for TARGET_32BIT, > > > > it should be valid for TARGET_X32. > > > > > > (define_predicate "x86_64_immediate_operand" > > > (match_code "const_int,symbol_ref,label_ref,const") > > It is *movdi_internal_rex64. Lu 2011-07-27 15:42:37 UTC (In reply to comment #5) > (In reply to comment #4) > > > > Can you prevent x32 to generate DImode symbols?

  1. It must handle all immediate_operands.
  2. This will be done in a few days, as soon as everyone agree on it.
  3. Do I have to use the old 1.0.10fpc if I want to make win32 binaries, or I can use 1.9.1 too?
  4. No, since Pmode is still in > > > DImode and DImode addresses are *valid* addresses.
  5. I got a bad feeling about these units are not for > the 1.9.1 version of fpc.

Comment 8 H.J. This testcase is about valid address for x86_64_immediate_operand and x86_64_zext_immediate_operand. i686 = TARGET_32BIT x32 = TARGET_64BIT x86_64 = TARGET_64BIT > > This is artificial limitation. > > Those generated codes aren't very efficient for x32. OTOH fpc 1.9+ creates .ppu files for both, so you need to split up.

Most annoying abuses are: 1) Top posting 2) Thread hijacking 3) HTML/MIME encoded mail 4) Improper quoting 5) Improper trimming _______________________________________________ You may change your MinGW Account Options or unsubscribe at: weblink We ask that you be polite and do the same. It should run right without needing that option. If it is valid for TARGET_32BIT, > > it should be valid for TARGET_X32. > > (define_predicate "x86_64_immediate_operand" > (match_code "const_int,symbol_ref,label_ref,const") > { > if (!TARGET_64BIT) > return immediate_operand (op, mode);

Those generated codes aren't very efficient for x32. Illustration: $ ./dlltool -l /dev/null /dev/null dndibh.s: Assembler messages: dndibh.s:5: Error: cannot represent relocation type BFD_RELOC_RVA dndibh.s:10: Error: cannot represent relocation type BFD_RELOC_RVA dndibh.s:11: Error: cannot represent relocation type BFD_RELOC_RVA ./dlltool: It can compile my projects. navigate here Most annoying abuses are: 1) Top posting 2) Thread hijacking 3) HTML/MIME encoded mail 4) Improper quoting 5) Improper trimming _______________________________________________ You may change your MinGW Account Options or unsubscribe at:

Am I right? > > > You need a cross compiled as and ld with target that supports win32. PS: I can execute the same commad in native Windows without errors. The assembler and linker are external > applications from GNU binutils.

For the testcase from PR, > > expand generates SImode symbol that is later extended to DImode and handled > > through movabs. > > This testcase is about valid address

Comment 4 H.J. I got a bad feeling about these units are not for >>the 1.9.1 version of fpc. In > another word, if a memory operand is OK for ia32, it must be OK > for x32. We ask that you be polite and do the same.

Maybe 64-bit mode is being selected inside the assembler source file. But this solution will only handle the LCL. For this testcase, x32 should generate > > very similar code to ia32, except for additional 8 registers. his comment is here Or it doesn't matter?

Generated output @00000000 00 00 00 00 00 00 00 00 0F C6 00 00 00 00 00 00 2^@0D CE 00 00 00 00 00 00 0D 8E 00 00 Lu PR target/49860 * gcc.target/i386/pr47446-3.c: Renamed to ... * gcc.target/i386/pr49860-1.c: This.

Back to Top