Michael Schmitz <schmitz@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> writes:
I am a bit confused about the 9264: 11fc 0040 fc00 moveb #64,fffffc00 <CC6_ENABLE_D+0x7ffffc00> vs. 925a: 11fc 0003 fc00 moveb #3,fffffc00 <CC6_ENABLE_D+0x7ffffc00> difference here as well - it appears gcc evaluates acia.key_ctrl = ACIA_RESET | (atari_switches & ATARI_SWITCH_IKBD) ? ACIA_RHTID : 0; so (atari_switches & ATARI_SWITCH_IKBD) is always true?
ACIA_RESET is always true.
Indeed, using acia.key_ctrl = ACIA_RESET | ((atari_switches & ATARI_SWITCH_IKBD) ? ACIA_RHTID : 0); I get either #3 or #67 as constants which seems much more sensible. Did C operator precedences change recently? The code in question has been unchanged since before 2.2, so why has it ever worked before?
It definitely has never worked as intended. Andreas. -- Andreas Schwab, SuSE Labs, schwab@xxxxxxx SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." -- To unsubscribe from this list: send the line "unsubscribe linux-m68k" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html