Bug#202017: gcc-3.3: Unnecessary branching with INET/INET6 port setting

2003-07-19 Thread Herbert Xu
On Sat, Jul 19, 2003 at 01:05:52PM +0200, Martin v. L?wis wrote: > Falk Hueffner <[EMAIL PROTECTED]> writes: > > > This is not the problem. gcc assumes the asm will return the same > > value unless it is explicitely marked "volatile" (or has no oputputs), > > and will happily merge them. > > I se

Bug#202017: gcc-3.3: Unnecessary branching with INET/INET6 port setting

2003-07-19 Thread Martin v. Löwis
Falk Hueffner <[EMAIL PROTECTED]> writes: > This is not the problem. gcc assumes the asm will return the same > value unless it is explicitely marked "volatile" (or has no oputputs), > and will happily merge them. I see. Then this would be a glibc bug, for using __asm__ __volatile__ in __bswap16.

Bug#202017: gcc-3.3: Unnecessary branching with INET/INET6 port setting

2003-07-19 Thread Falk Hueffner
[EMAIL PROTECTED] (Martin v. =?iso-8859-15?q?L=F6wis?=) writes: > <[EMAIL PROTECTED]> writes: > > > As you can see, the branch due to the family is unnecessary. This bug > > exists in gcc272, gcc 2.95 and gcc 3.2 > > It is unlikely that this bug will ever get fixed, as gcc won't be > able to de

Bug#202017: gcc-3.3: Unnecessary branching with INET/INET6 port setting

2003-07-19 Thread Martin v. Löwis
<[EMAIL PROTECTED]> writes: > As you can see, the branch due to the family is unnecessary. This bug > exists in gcc272, gcc 2.95 and gcc 3.2 It is unlikely that this bug will ever get fixed, as gcc won't be able to determine that the two __asm__ blocks really have the same effect. So if you wan

Bug#202017: gcc-3.3: Unnecessary branching with INET/INET6 port setting

2003-07-18 Thread herbert
Package: gcc-3.3 Version: 1:3.3.1-0pre0 Severity: minor The following program -- #include int main(struct sockaddr *fromp, int port) { const int family = fromp->sa_family; union { struct sockaddr_in6 in6; struct sockaddr_in in; } *const u