[XviD-devel] Mach-O and SECTION .rodata

Takashi Mochizuki mochi at da2.so-net.ne.jp
Sat Dec 6 06:04:37 CET 2008


Hi,
Another patch for nasm.inc.

Using daily snapshot 20081206,
- I've got crash on:
         [quant_h263_inter_sse2:movdqa] (quantize_h264_mmx.asm:539)
- it seems to be that [plus_one] is not loaded as aligned
         line 39 ALIGN SECTION_ALIGN is not functional under my MacOS  
X env.
- At 20080819 snapshot, it is movdqu, not movdqa.
         reverting movdqa to movdqu can avoid crash though...

//

After a few hour search, I have found
- <http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/2008-August/015984.html 
 >

Directive ALIGN for SECTION .rodata may not function well - under  
"some" MacOS X; at least my mac.
(It seems to be, not yasm/nasm issue though... by ld64?)

And following is simple patch, snippet from above post. This can  
resolve crash at movdqa.

Takashi Mochzuki

//

--- xvid_20081206.orig/src/nasm.inc	2008-12-05 19:15:02.000000000 +0900
+++ xvid_20081206/src/nasm.inc	2008-12-06 12:19:56.000000000 +0900
@@ -170,7 +170,12 @@
        %ifdef FORMAT_COFF
              SECTION .rodata
        %else
-            SECTION .rodata align=SECTION_ALIGN
+        %ifidn __OUTPUT_FORMAT__,macho
+          SECTION .text align=SECTION_ALIGN
+          fakegot:
+        %else
+          SECTION .rodata align=SECTION_ALIGN
+        %endif
        %endif
  %endmacro




More information about the Xvid-devel mailing list