]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Correct logic bug in aicasm's undefined register bit access detection code.
authorJustin T. Gibbs <gibbs@FreeBSD.org>
Wed, 14 Jul 2010 14:31:18 +0000 (14:31 +0000)
committerJustin T. Gibbs <gibbs@FreeBSD.org>
Wed, 14 Jul 2010 14:31:18 +0000 (14:31 +0000)
commitb744190698f2804eeac7c831ef566a9eb8c20b79
tree4c45cb872f5abca9d960f035acfac8156003ad05
parent28ab822d8a38f2ac545772e304362c0b7cc2366d
Correct logic bug in aicasm's undefined register bit access detection code.

The code in question verifies that all register write operations only change
bits that are defined (in the register definition file) for that effected
register.  The bug effectively disabled this checking.

o Fix the check by testing the opcode against all supported read ("and" based)
  operands.

o Add missing bit definitions to the aic7xxx and aic79xx register definition
  files so that the warning (treated as a fatal error) does not spuriously
  fire.

Reported by: Pawel Worach <pawel.worach@gmail.com>
MFC after: 1 week
sys/dev/aic7xxx/aic79xx.reg
sys/dev/aic7xxx/aic7xxx.reg
sys/dev/aic7xxx/aicasm/aicasm_gram.y