This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Binutils 2.15.97 available
- From: Etienne Lorrain <etienne_lorrain at yahoo dot fr>
- To: binutils at sources dot redhat dot com
- Cc: drow at false dot org
- Date: Mon, 25 Apr 2005 16:11:25 +0200 (CEST)
- Subject: Re: Binutils 2.15.97 available
Hi,
I have s strange problem with this version, but 2.15 works.
Do you know what
Error: `dataPS2' can't be equated to common symbol
means?
-------------------------------
etienne@cygne:~/projet/gujin$ cat tmp.c
struct mouse_interface_str {
enum MOUSE_type {
MOUSE_NONE= 0,
MOUSE_PS2 = 0xAA,
MOUSE_SERIAL_COM1 = 0x10, MOUSE_SERIAL_COM2, /* 2 buttons */
MOUSE_SERIAL_COM3, MOUSE_SERIAL_COM4,
MOUSE_SERIAL3_COM1 = 0x30, MOUSE_SERIAL3_COM2, /* 3 buttons */
MOUSE_SERIAL3_COM3, MOUSE_SERIAL3_COM4, /* Logitech */
MOUSE_SERIALM_COM1 = 0x40, MOUSE_SERIALM_COM2, /* 3 buttons */
MOUSE_SERIALM_COM3, MOUSE_SERIALM_COM4 /* MouseSystems */
#define MOUSE_SERIAL_MASK 0xF0
} type;
union {
struct PS2_struct {
unsigned short reservedword : 16;
signed char y_data : 8;
signed char y_reserved : 8;
signed char x_data : 8;
signed char x_reserved : 8;
unsigned char left_button : 1;
unsigned char right_button : 1;
unsigned char middle_button : 1;
unsigned char reservedbit : 1;
unsigned char x_negative : 1;
unsigned char y_negative : 1;
unsigned char x_overflow : 1;
unsigned char y_overflow : 1;
unsigned char reservedbyte : 8;
} __attribute__ ((packed)) PS2;
} data;
} MOUSE;
unsigned MOUSE_PS2_init (void)
{
MOUSE.type = MOUSE_PS2;
asm volatile (" dataPS2 = %c0 ": : "i" (&MOUSE.data.PS2));
return 0;
}
asm (
"PS2_mouse_callback: \n"
" pushl %ds \n"
" pushl %eax \n"
" movw %cs,%ax \n"
" addw $deltaseg,%ax # not necessary if no CODE_SEGMENT \n"
" movw %ax,%ds \n"
" movl 12(%esp),%eax \n"
" movl %eax,dataPS2 \n"
" movl 16(%esp),%eax \n"
" movl %eax,dataPS2 + 4 \n"
" popl %eax \n"
" popl %ds \n"
" lretw \n"
);
etienne@cygne:~/projet/gujin$ /home/etienne/projet/toolchain/bin/gcc
--version
gcc (GCC) 3.4.0
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
etienne@cygne:~/projet/gujin$ /home/etienne/projet/toolchain/bin/ld -v
GNU ld version 2.15.97 20050420
etienne@cygne:~/projet/gujin$ /home/etienne/projet/toolchain/bin/as -v
GNU assembler version 2.15.97 (i686-pc-linux-gnu) using BFD version 2.15.97
20050420
etienne@cygne:~/projet/gujin$ /home/etienne/projet/toolchain/bin/gcc tmp.c
/tmp/ccQt6JrC.s: Assembler messages:
/tmp/ccQt6JrC.s:34: Error: `dataPS2' can't be equated to common symbol
etienne@cygne:~/projet/gujin$
-------------------------------
Thanks,
Etienne.
__________________________________________________________________
Découvrez le nouveau Yahoo! Mail : 250 Mo d'espace de stockage pour vos mails !
Créez votre Yahoo! Mail sur http://fr.mail.yahoo.com/