X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fpariscid.pl;h=5a231c49f02a0a8df7a0b85b4f4db04c2d7630f2;hp=3d4a5f8aef86689beadb52066c3f091161439033;hb=f8e1c190d56c5ec53e3ae5ee72669862460cfc22;hpb=c4d3c19b4c17ed5d9da790dd330409ce11e6a499 diff --git a/crypto/pariscid.pl b/crypto/pariscid.pl index 3d4a5f8aef..5a231c49f0 100644 --- a/crypto/pariscid.pl +++ b/crypto/pariscid.pl @@ -255,9 +255,22 @@ L\$done2 .PROCEND ___ } -$code =~ s/cmpib,\*/comib,/gm if ($SIZE_T==4); -$code =~ s/,\*/,/gm if ($SIZE_T==4); -$code =~ s/\bbv\b/bve/gm if ($SIZE_T==8); -print $code; + +if (`$ENV{CC} -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1` + =~ /GNU assembler/) { + $gnuas = 1; +} + +foreach(split("\n",$code)) { + + s/(\.LEVEL\s+2\.0)W/$1w/ if ($gnuas && $SIZE_T==8); + s/\.SPACE\s+\$TEXT\$/.text/ if ($gnuas && $SIZE_T==8); + s/\.SUBSPA.*// if ($gnuas && $SIZE_T==8); + s/cmpib,\*/comib,/ if ($SIZE_T==4); + s/,\*/,/ if ($SIZE_T==4); + s/\bbv\b/bve/ if ($SIZE_T==8); + + print $_,"\n"; +} close STDOUT;