+ $T_HDR_fast = "\.text\n\t\.align 4\n";
+ $T_HDR_vector = "\.text\n\t\.align 4\n"; # NB: requires padding
+ $T_HDR_direct = "\.text\n\t\.align 4\n";
+
+ #--------------------------------------------------------#
+ } elsif ( $TargetPlatform =~ /^m68k-.*-sunos4/ ) {
+
+ $T_STABBY = 1; # 1 iff .stab things (usually if a.out format)
+ $T_US = '_'; # _ if symbols have an underscore on the front
+ $T_PRE_APP = '^# MAY NOT APPLY'; # regexp that says what comes before APP/NO_APP
+ $T_CONST_LBL = '^LC(\d+):$';
+ $T_POST_LBL = ':';
+
+ $T_MOVE_DIRVS = '^(\s*(\.align\s+\d+|\.proc\s+\d+|\.const|\.cstring|\.globl\s+\S+|\.text|\.data|\.even|\.stab[^n].*)\n)';
+ $T_COPY_DIRVS = '\.(globl|proc|stab)';
+ $T_hsc_cc_PAT = '\.ascii.*\)(hsc|cc) (.*)\\\\11"\n\t\.ascii\s+"(.*)\\\\0"';
+
+ $T_DOT_WORD = '\.long';
+ $T_DOT_GLOBAL = '\.globl';
+ $T_HDR_literal = "\.text\n\t\.even\n";
+ $T_HDR_misc = "\.text\n\t\.even\n";
+ $T_HDR_data = "\.data\n\t\.even\n";
+ $T_HDR_consist = "\.text\n";
+ $T_HDR_closure = "\.data\n\t\.even\n";
+ $T_HDR_srt = "\.text\n\t\.even\n";
+ $T_HDR_info = "\.text\n\t\.even\n";
+ $T_HDR_entry = "\.text\n\t\.even\n";
+ $T_HDR_fast = "\.text\n\t\.even\n";
+ $T_HDR_vector = "\.text\n\t\.even\n";
+ $T_HDR_direct = "\.text\n\t\.even\n";
+
+ #--------------------------------------------------------#
+ } elsif ( $TargetPlatform =~ /^mips-.*/ ) {
+
+ $T_STABBY = 0; # 1 iff .stab things (usually if a.out format)
+ $T_US = ''; # _ if symbols have an underscore on the front
+ $T_PRE_APP = '^\s*#'; # regexp that says what comes before APP/NO_APP
+ $T_CONST_LBL = '^\$LC(\d+):$'; # regexp for what such a lbl looks like
+ $T_POST_LBL = ':';
+
+ $T_MOVE_DIRVS = '^(\s*(\.align\s+\d+|\.(globl|ent)\s+\S+|\.text|\.r?data)\n)';
+ $T_COPY_DIRVS = '\.(globl|ent)';
+
+ $T_hsc_cc_PAT = 'I WAS TOO LAZY TO DO THIS BIT (WDP 95/05)';
+ $T_DOT_WORD = '\.word';
+ $T_DOT_GLOBAL = '^\t\.globl';
+ $T_HDR_literal = "\t\.rdata\n\t\.align 2\n";
+ $T_HDR_misc = "\t\.text\n\t\.align 2\n";
+ $T_HDR_data = "\t\.data\n\t\.align 2\n";
+ $T_HDR_consist = 'TOO LAZY TO DO THIS TOO';
+ $T_HDR_closure = "\t\.data\n\t\.align 2\n";
+ $T_HDR_srt = "\t\.text\n\t\.align 2\n";
+ $T_HDR_info = "\t\.text\n\t\.align 2\n";
+ $T_HDR_entry = "\t\.text\n\t\.align 2\n";
+ $T_HDR_fast = "\t\.text\n\t\.align 2\n";
+ $T_HDR_vector = "\t\.text\n\t\.align 2\n";
+ $T_HDR_direct = "\t\.text\n\t\.align 2\n";
+
+ #--------------------------------------------------------#
+ } elsif ( $TargetPlatform =~ /^powerpc-.*|^rs6000-.*/ ) {
+
+ $T_STABBY = 0; # 1 iff .stab things (usually if a.out format)
+ $T_US = ''; # _ if symbols have an underscore on the front
+ $T_PRE_APP = 'NOT APPLICABLE'; # regexp that says what comes before APP/NO_APP
+ $T_CONST_LBL = 'NOT APPLICABLE'; # regexp for what such a lbl looks like
+ $T_POST_LBL = ':';
+
+ $T_MOVE_DIRVS = '^(\s*(\.toc|\.align \d+|\.csect \S+|\t\.?l?globl \S+)\n)';
+ $T_COPY_DIRVS = '\.(l?globl)';
+
+ $T_hsc_cc_PAT = '\.byte.*\)(hsc|cc) (.*)"\n\t\.byte \d+\n\t\.byte "(.*)"\n\t\.byte \d+';
+ $T_DOT_WORD = '\.long';
+ $T_DOT_GLOBAL = '\.globl';
+ $T_HDR_toc = "\.toc\n";
+ $T_HDR_literal = "\.csect .data[RW]\n\t\.align 2\n"; #not RO!?
+ $T_HDR_misc = "# misc\n\.csect \.text[PR]\n\t\.align 2\n";
+ $T_HDR_data = "# data\n\.csect \.data[RW]\n\t\.align 2\n";
+ $T_HDR_consist = "# consist\n\.csect \.data[RW]\n\t\.align 2\n";
+ $T_HDR_closure = "# closure\n\.csect \.data[RW]\n\t\.align 2\n";
+ $T_HDR_srt = "# closure\n\.csect \.data[RW]\n\t\.align 2\n";
+ $T_HDR_info = "# info\n\.csect \.data[RW]\n\t\.align 2\n"; #not RO!?
+ $T_HDR_entry = "# entry\n\.csect \.text[PR]\n\t\.align 2\n";
+ $T_HDR_fast = "# fast\n\.csect \.text[PR]\n\t\.align 2\n";
+ $T_HDR_vector = "# vector\n\.csect \.data[RW]\n\t\.align 2\n"; #not RO!?
+ $T_HDR_direct = "# direct\n";
+
+ #--------------------------------------------------------#
+ } elsif ( $TargetPlatform =~ /^sparc-.*-solaris2/ ) {
+
+ $T_STABBY = 0; # 1 iff .stab things (usually if a.out format)
+ $T_US = ''; # _ if symbols have an underscore on the front
+ $T_PRE_APP = 'DOES NOT SEEM TO APPLY'; # regexp that says what comes before APP/NO_APP
+ $T_CONST_LBL = '^\.LLC(\d+):$'; # regexp for what such a lbl looks like
+ $T_POST_LBL = ':';
+
+ $T_MOVE_DIRVS = '^((\s+\.align\s+\d+|\s+\.proc\s+\d+|\s+\.global\s+\S+|\.text|\.data|\.stab.*|\.section.*|\s+\.type.*|\s+\.size.*)\n)';
+ $T_COPY_DIRVS = '\.(global|proc|stab)';
+
+ $T_hsc_cc_PAT = '\.asciz.*\)(hsc|cc) (.*)\\\\t(.*)"';
+ $T_DOT_WORD = '\.(word|byte|half|skip|uahalf|uaword)';
+ $T_DOT_GLOBAL = '^\t\.global';
+ $T_HDR_literal = "\.text\n\t\.align 8\n";
+ $T_HDR_misc = "\.text\n\t\.align 4\n";
+ $T_HDR_data = "\.data\n\t\.align 8\n";
+ $T_HDR_consist = "\.text\n";
+ $T_HDR_closure = "\.data\n\t\.align 4\n";
+ $T_HDR_srt = "\.data\n\t\.align 4\n";
+ $T_HDR_info = "\.text\n\t\.align 4\n";
+ $T_HDR_entry = "\.text\n\t\.align 4\n";
+ $T_HDR_fast = "\.text\n\t\.align 4\n";
+ $T_HDR_vector = "\.text\n\t\.align 4\n";
+ $T_HDR_direct = "\.text\n\t\.align 4\n";
+
+ #--------------------------------------------------------#
+ } elsif ( $TargetPlatform =~ /^sparc-.*-sunos4/ ) {
+
+ $T_STABBY = 1; # 1 iff .stab things (usually if a.out format)
+ $T_US = '_'; # _ if symbols have an underscore on the front
+ $T_PRE_APP = '^# DOES NOT SEEM TO APPLY'; # regexp that says what comes before APP/NO_APP
+ $T_CONST_LBL = '^LC(\d+):$';
+ $T_POST_LBL = ':';
+
+ $T_MOVE_DIRVS = '^((\s+\.align\s+\d+|\s+\.proc\s+\d+|\s+\.global\s+\S+|\.text|\.data|\.stab.*)\n)';
+ $T_COPY_DIRVS = '\.(global|proc|stab)';
+ $T_hsc_cc_PAT = '\.ascii.*\)(hsc|cc) (.*)\\\\11"\n\t\.ascii\s+"(.*)\\\\0"';
+
+ $T_DOT_WORD = '\.word';
+ $T_DOT_GLOBAL = '^\t\.global';
+ $T_HDR_literal = "\.text\n\t\.align 8\n";
+ $T_HDR_misc = "\.text\n\t\.align 4\n";
+ $T_HDR_data = "\.data\n\t\.align 8\n";
+ $T_HDR_consist = "\.text\n";
+ $T_HDR_closure = "\.data\n\t\.align 4\n";
+ $T_HDR_srt = "\.data\n\t\.align 4\n";
+ $T_HDR_info = "\.text\n\t\.align 4\n";
+ $T_HDR_entry = "\.text\n\t\.align 4\n";
+ $T_HDR_fast = "\.text\n\t\.align 4\n";
+ $T_HDR_vector = "\.text\n\t\.align 4\n";
+ $T_HDR_direct = "\.text\n\t\.align 4\n";
+
+ #--------------------------------------------------------#
+ } else {
+ print STDERR "$Pgm: don't know how to mangle assembly language for: $TargetPlatform\n";
+ exit 1;