diff --git a/icu4c/source/config/mh-darwin b/icu4c/source/config/mh-darwin index f02df28d23a..dfc984393db 100644 --- a/icu4c/source/config/mh-darwin +++ b/icu4c/source/config/mh-darwin @@ -4,7 +4,7 @@ ## Copyright (c) 1999-2003, International Business Machines Corporation and ## others. All Rights Reserved. ## -## $Id: mh-darwin,v 1.30 2003/10/07 18:36:09 grhoten-oss Exp $ +## $Id: mh-darwin,v 1.31 2004/03/09 23:35:51 grhoten-oss Exp $ ## Flags for position independent code SHAREDLIBCFLAGS = -dynamic @@ -36,6 +36,8 @@ LD_RPATH_PRE= ## Environment variable to set a runtime search path LDLIBRARYPATH_ENVVAR = DYLD_LIBRARY_PATH +GENCCODE_ASSEMBLY=-a gcc-darwin + ## Shared object suffix SO= dylib ## Non-shared intermediate object suffix diff --git a/icu4c/source/tools/genccode/genccode.c b/icu4c/source/tools/genccode/genccode.c index 89000d1b540..ae310153b11 100644 --- a/icu4c/source/tools/genccode/genccode.c +++ b/icu4c/source/tools/genccode/genccode.c @@ -140,43 +140,49 @@ static const struct AssemblyType { const char *beginLine; } assemblyHeader[] = { {"gcc", + ".globl %s\n" + "\t.section .rodata\n" + "\t.align 8\n" /* Either align 8 bytes or 2^8 (256) bytes. 8 bytes is needed. */ + "%s:\n\n", - ".globl %s\n" - "\t.section .rodata\n" - "\t.align 8\n" /* Either align 8 bytes or 2^8 (256) bytes. 8 bytes is needed. */ - "%s:\n\n", - - ".long " + ".long " }, {"gcc-darwin", + /*"\t.section __TEXT,__text,regular,pure_instructions\n" + "\t.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32\n"*/ + ".globl _%s\n" + "\t.data\n" + "\t.const\n" + "\t.align 4\n" /* 1<<4 = 16 */ + "_%s:\n\n", - /*"\t.section __TEXT,__text,regular,pure_instructions\n" - "\t.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32\n"*/ - ".globl _%s\n" - "\t.data\n" - "\t.const\n" - "\t.align 4\n" /* 1<<4 = 16 */ - "_%s:\n\n", - - ".long " + ".long " }, {"sun", + "\t.section \".rodata\"\n" + "\t.align 16\n" + ".globl %s\n" + "%s:\n", - "\t.section \".rodata\"\n" - "\t.align 16\n" - ".globl %s\n" - "%s:\n", - - ".word " + ".word " }, {"xlc", + ".globl %s{RO}\n" + "\t.toc\n" + "%s:\n" + "\t.csect %s{RO}, 4\n", - ".globl %s{RO}\n" - "\t.toc\n" - "%s:\n" - "\t.csect %s{RO}, 4\n", + ".long " + } + {"aCC", + "\t.SPACE $TEXT$\n" + "\t.SUBSPA $LIT$\n" + "%s\n" + "\t.EXPORT %s\n" + "\t.ALIGN 16\n", - ".long"} + ".WORD " + }, }; static int32_t assemblyHeaderIndex = -1;