c++/8333: c++ emits double .globals for symbols [ regression from 3.0.4 ]

robertlipe@usa.net robertlipe@usa.net
Wed Oct 23 23:56:00 GMT 2002


>Number:         8333
>Category:       c++
>Synopsis:       c++ emits double .globals for symbols [ regression from 3.0.4 ]
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Oct 23 23:36:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     robert lipe
>Release:        gcc 3.2
>Organization:
>Environment:
i686-pc-sco3.2v5, i686-pc-udk, i686-pc-uw7.1.1.
>Description:
$ ./xgcc -c ./registers1.ii
/usr/tmp//ccG6WKmc.s:4:name already bound as global: float_src
/usr/tmp//ccG6WKmc.s:12:name already bound as global: float_dest
/usr/tmp//ccG6WKmc.s:19:name already bound as global: int_src
/usr/tmp//ccG6WKmc.s:26:name already bound as global: int_dest

Sure enough, it's emitting double .globl for C++ things.

(robertl) rjlhome:/play/negcs-3.2/gcc
$ head -5 registers1.s
        .file   "registers1.C"
        .version        "01.01"
        .globl  float_src
        .globl  float_src
        .data

3.0.4 didn't do this.  You can argue that the assembler is being lame
and I won't argue, but it'd be helpful to folks that use AT&T derived
assemblers if we wouldn't torment them.

>How-To-Repeat:
./xgcc -c ./registers1.ii
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="registers1.ii"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="registers1.ii"

IyAxICIvcGxheS9nY2MtMy4yL2djYy90ZXN0c3VpdGUvZysrLmRnL2VoL3JlZ2lzdGVyczEuQyIK
IyAxICI8YnVpbHQtaW4+IgojIDEgIjxjb21tYW5kIGxpbmU+IgojIDEgIi9wbGF5L2djYy0zLjIv
Z2NjL3Rlc3RzdWl0ZS9nKysuZGcvZWgvcmVnaXN0ZXJzMS5DIgoKCgoKZXh0ZXJuICJDIiB2b2lk
IGV4aXQoaW50KTsKZXh0ZXJuICJDIiB2b2lkIGFib3J0KCk7CiMgMTUgIi9wbGF5L2djYy0zLjIv
Z2NjL3Rlc3RzdWl0ZS9nKysuZGcvZWgvcmVnaXN0ZXJzMS5DIgpjb25zdCBpbnQgbnVtX3ZhcnMg
PSAxNjsKY29uc3QgaW50IGRlcHRoID0gMzsKCmZsb2F0IGZsb2F0X3NyY1tudW1fdmFycyAqIGRl
cHRoXTsKZmxvYXQgZmxvYXRfZGVzdFtudW1fdmFyc107CgppbnQgaW50X3NyY1tudW1fdmFycyAq
IGRlcHRoXTsKaW50IGludF9kZXN0W251bV92YXJzXTsKCnZvaWQgZm9vIChpbnQgbGV2ZWwsIGlu
dCB0aHJvd190bykKewogIGZsb2F0ICpmc3JjID0gJmZsb2F0X3NyY1tsZXZlbCAqIG51bV92YXJz
XTsKICBmbG9hdCBmMDAgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDEgPSAqZnNyYysrICsg
MS4wZjsKICBmbG9hdCBmMDIgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDMgPSAqZnNyYysr
ICsgMS4wZjsKICBmbG9hdCBmMDQgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDUgPSAqZnNy
YysrICsgMS4wZjsKICBmbG9hdCBmMDYgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDcgPSAq
ZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDggPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMDkg
PSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMTAgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBm
MTEgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMTIgPSAqZnNyYysrICsgMS4wZjsKICBmbG9h
dCBmMTMgPSAqZnNyYysrICsgMS4wZjsKICBmbG9hdCBmMTQgPSAqZnNyYysrICsgMS4wZjsKICBm
bG9hdCBmMTUgPSAqZnNyYysrICsgMS4wZjsKCiAgaW50ICppc3JjID0gJmludF9zcmNbbGV2ZWwg
KiBudW1fdmFyc107CiAgaW50IGkwMCA9ICppc3JjKysgKyAxOwogIGludCBpMDEgPSAqaXNyYysr
ICsgMTsKICBpbnQgaTAyID0gKmlzcmMrKyArIDE7CiAgaW50IGkwMyA9ICppc3JjKysgKyAxOwog
IGludCBpMDQgPSAqaXNyYysrICsgMTsKICBpbnQgaTA1ID0gKmlzcmMrKyArIDE7CiAgaW50IGkw
NiA9ICppc3JjKysgKyAxOwogIGludCBpMDcgPSAqaXNyYysrICsgMTsKICBpbnQgaTA4ID0gKmlz
cmMrKyArIDE7CiAgaW50IGkwOSA9ICppc3JjKysgKyAxOwogIGludCBpMTAgPSAqaXNyYysrICsg
MTsKICBpbnQgaTExID0gKmlzcmMrKyArIDE7CiAgaW50IGkxMiA9ICppc3JjKysgKyAxOwogIGlu
dCBpMTMgPSAqaXNyYysrICsgMTsKICBpbnQgaTE0ID0gKmlzcmMrKyArIDE7CiAgaW50IGkxNSA9
ICppc3JjKysgKyAxOwoKICB0cnkKICAgIHsKICAgICAgaWYgKGxldmVsID09IDApCiAgICAgICAg
dGhyb3cgdGhyb3dfdG87CiAgICAgIGVsc2UKICAgICAgICBmb28gKGxldmVsIC0gMSwgdGhyb3df
dG8pOwogICAgfQogIGNhdGNoIChpbnQgaSkKICAgIHsKICAgICAgaWYgKGkgPT0gbGV2ZWwpCiAg
ICAgICAgewogICAgICAgICAgZmxvYXQgKmZkZXN0ID0gZmxvYXRfZGVzdDsKICAgICAgICAgICpm
ZGVzdCsrID0gZjAwOwogICAgICAgICAgKmZkZXN0KysgPSBmMDE7CiAgICAgICAgICAqZmRlc3Qr
KyA9IGYwMjsKICAgICAgICAgICpmZGVzdCsrID0gZjAzOwogICAgICAgICAgKmZkZXN0KysgPSBm
MDQ7CiAgICAgICAgICAqZmRlc3QrKyA9IGYwNTsKICAgICAgICAgICpmZGVzdCsrID0gZjA2Owog
ICAgICAgICAgKmZkZXN0KysgPSBmMDc7CiAgICAgICAgICAqZmRlc3QrKyA9IGYwODsKICAgICAg
ICAgICpmZGVzdCsrID0gZjA5OwogICAgICAgICAgKmZkZXN0KysgPSBmMTA7CiAgICAgICAgICAq
ZmRlc3QrKyA9IGYxMTsKICAgICAgICAgICpmZGVzdCsrID0gZjEyOwogICAgICAgICAgKmZkZXN0
KysgPSBmMTM7CiAgICAgICAgICAqZmRlc3QrKyA9IGYxNDsKICAgICAgICAgICpmZGVzdCsrID0g
ZjE1OwoKICAgICAgICAgIGludCAqaWRlc3QgPSBpbnRfZGVzdDsKICAgICAgICAgICppZGVzdCsr
ID0gaTAwOwogICAgICAgICAgKmlkZXN0KysgPSBpMDE7CiAgICAgICAgICAqaWRlc3QrKyA9IGkw
MjsKICAgICAgICAgICppZGVzdCsrID0gaTAzOwogICAgICAgICAgKmlkZXN0KysgPSBpMDQ7CiAg
ICAgICAgICAqaWRlc3QrKyA9IGkwNTsKICAgICAgICAgICppZGVzdCsrID0gaTA2OwogICAgICAg
ICAgKmlkZXN0KysgPSBpMDc7CiAgICAgICAgICAqaWRlc3QrKyA9IGkwODsKICAgICAgICAgICpp
ZGVzdCsrID0gaTA5OwogICAgICAgICAgKmlkZXN0KysgPSBpMTA7CiAgICAgICAgICAqaWRlc3Qr
KyA9IGkxMTsKICAgICAgICAgICppZGVzdCsrID0gaTEyOwogICAgICAgICAgKmlkZXN0KysgPSBp
MTM7CiAgICAgICAgICAqaWRlc3QrKyA9IGkxNDsKICAgICAgICAgICppZGVzdCsrID0gaTE1Owog
ICAgICAgIH0KICAgICAgZWxzZQogICAgICAgIHsKICAgICAgICAgIHRocm93OwogICAgICAgIH0K
ICAgIH0KfQoKaW50IG1haW4gKCkKewogIGZvciAoaW50IGkgPSAwOyBpIDwgZGVwdGggKiBudW1f
dmFyczsgaSsrKQogICAgewogICAgICBpbnRfc3JjW2ldID0gaSAqIGk7CiAgICAgIGZsb2F0X3Ny
Y1tpXSA9IGkgKiAyLjBmOwogICAgfQogIGZvciAoaW50IGxldmVsID0gMDsgbGV2ZWwgPCBkZXB0
aDsgbGV2ZWwrKykKICAgIGZvciAoaW50IHRocm93X3RvID0gMDsgdGhyb3dfdG8gPD0gbGV2ZWw7
IHRocm93X3RvKyspCiAgICAgIHsKICAgICAgICBmb28gKGxldmVsLCB0aHJvd190byk7CiAgICAg
ICAgZmxvYXQgKmZzcmMgPSAmZmxvYXRfc3JjW3Rocm93X3RvICogbnVtX3ZhcnNdOwogICAgICAg
IGludCAqaXNyYyA9ICZpbnRfc3JjW3Rocm93X3RvICogbnVtX3ZhcnNdOwogICAgICAgIGZvciAo
aW50IGkgPSAwOyBpIDwgbnVtX3ZhcnM7IGkrKykKICAgICAgICAgIHsKICAgICAgICAgICAgaWYg
KGludF9kZXN0W2ldICE9IGlzcmNbaV0gKyAxKQogICAgICAgICAgICAgIGFib3J0ICgpOwogICAg
ICAgICAgICBpZiAoZmxvYXRfZGVzdFtpXSAhPSBmc3JjW2ldICsgMS4wZikKICAgICAgICAgICAg
ICBhYm9ydCAoKTsKICAgICAgICAgIH0KICAgICAgfQogIGV4aXQgKDApOwp9Cg==



More information about the Gcc-bugs mailing list