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

Re: [MiNT] Binutils 2.18 + GCC 4.2.3



Some ideas if you want to mess the things even more :-)
This is how to switch from 2-byte alignment to 4-byte alignment.

In the binutils, file bfd/cpu-m68k.c
Thar file should be reverted to the original version.
 #define N(name, print,d,next)  \
-{ 32, 32, 8, bfd_arch_m68k, name, "m68k",print,2,d,bfd_m68k_compatible,bfd_default_scan, next, } +{ 32, 32, 8, bfd_arch_m68k, name, "m68k",print,1,d,bfd_m68k_compatible,bfd_default_scan, next, }

Note the number after "print". It is the alignement power.
2 indicates an alignment of 4 (=2^2)
1 indicates an alignment of 2 (=2^1)

Then in GCC:
In gcc/config/m68k/mint.h:
Remove:
#define TARGET_VTABLE_ENTRY_ALIGN 16

And add :
#undef ALIGN_ASM_OP
#define ALIGN_ASM_OP "\t.align\t"

##undef ASM_OUTPUT_ALIGN
#define ASM_OUTPUT_ALIGN(FILE,LOG)                              \
  if ((LOG) > 0)                                                \
    fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG));

I just share what I know right now !
All that stuff is completely untested, and might be totally wrong !
Use with caution, only for experimental purpose !

By the way, MiKRO, you should first fix your CPU and multilib problems.

--
Vincent Rivière