diff options
Diffstat (limited to 'results/classifier/deepseek-1/output/changes./1651167')
| -rw-r--r-- | results/classifier/deepseek-1/output/changes./1651167 | 551 |
1 files changed, 0 insertions, 551 deletions
diff --git a/results/classifier/deepseek-1/output/changes./1651167 b/results/classifier/deepseek-1/output/changes./1651167 deleted file mode 100644 index 339732218..000000000 --- a/results/classifier/deepseek-1/output/changes./1651167 +++ /dev/null @@ -1,551 +0,0 @@ - -hw/ipmi/isa_ipmi_bt.c:283: suspect use of macro ? - -I just had a go at compiling qemu trunk with -llvm trunk. It said: - -hw/ipmi/isa_ipmi_bt.c:283:31: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses] - -Source code is - - IPMI_BT_SET_HBUSY(ib->control_reg, - !IPMI_BT_GET_HBUSY(ib->control_reg)); - -That use of ! causes trouble. The SET and GET -macros are defined as: - -#define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) -#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ - (((v & 1) << IPMI_BT_HBUSY_BIT))) - -I can make the compiler shut up by adding extra () in the last -use of v in the SET macro, like this: - -#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ - ((((v) & 1) << IPMI_BT_HBUSY_BIT))) - -I think this is standard good practice when using macro parameters anyway. - -From: Corey Minyard <email address hidden> - -Macro parameters should almost always have () around them when used. -llvm reported an error on this. - -Reported in https://bugs.launchpad.net/bugs/1651167 - -Signed-off-by: Corey Minyard <email address hidden> ---- - hw/ipmi/isa_ipmi_bt.c | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c -index f036617..8a97314 100644 ---- a/hw/ipmi/isa_ipmi_bt.c -+++ b/hw/ipmi/isa_ipmi_bt.c -@@ -40,37 +40,37 @@ - #define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) - #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) - #define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_WR_BIT))) -+ ((((v) & 1) << IPMI_BT_CLR_WR_BIT))) - - #define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) - #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) - #define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_RD_BIT))) -+ ((((v) & 1) << IPMI_BT_CLR_RD_BIT))) - - #define IPMI_BT_H2B_ATN_MASK (1 << IPMI_BT_H2B_ATN_BIT) - #define IPMI_BT_GET_H2B_ATN(d) (((d) >> IPMI_BT_H2B_ATN_BIT) & 0x1) - #define IPMI_BT_SET_H2B_ATN(d, v) (d) = (((d) & ~IPMI_BT_H2B_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_H2B_ATN_BIT))) -+ ((((v) & 1) << IPMI_BT_H2B_ATN_BIT))) - - #define IPMI_BT_B2H_ATN_MASK (1 << IPMI_BT_B2H_ATN_BIT) - #define IPMI_BT_GET_B2H_ATN(d) (((d) >> IPMI_BT_B2H_ATN_BIT) & 0x1) - #define IPMI_BT_SET_B2H_ATN(d, v) (d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_ATN_BIT))) -+ ((((v) & 1) << IPMI_BT_B2H_ATN_BIT))) - - #define IPMI_BT_SMS_ATN_MASK (1 << IPMI_BT_SMS_ATN_BIT) - #define IPMI_BT_GET_SMS_ATN(d) (((d) >> IPMI_BT_SMS_ATN_BIT) & 0x1) - #define IPMI_BT_SET_SMS_ATN(d, v) (d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_SMS_ATN_BIT))) -+ ((((v) & 1) << IPMI_BT_SMS_ATN_BIT))) - - #define IPMI_BT_HBUSY_MASK (1 << IPMI_BT_HBUSY_BIT) - #define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) - #define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_HBUSY_BIT))) -+ ((((v) & 1) << IPMI_BT_HBUSY_BIT))) - - #define IPMI_BT_BBUSY_MASK (1 << IPMI_BT_BBUSY_BIT) - #define IPMI_BT_GET_BBUSY(d) (((d) >> IPMI_BT_BBUSY_BIT) & 0x1) - #define IPMI_BT_SET_BBUSY(d, v) (d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_BBUSY_BIT))) -+ ((((v) & 1) << IPMI_BT_BBUSY_BIT))) - - - /* Mask register */ -@@ -80,12 +80,12 @@ - #define IPMI_BT_B2H_IRQ_EN_MASK (1 << IPMI_BT_B2H_IRQ_EN_BIT) - #define IPMI_BT_GET_B2H_IRQ_EN(d) (((d) >> IPMI_BT_B2H_IRQ_EN_BIT) & 0x1) - #define IPMI_BT_SET_B2H_IRQ_EN(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) -+ ((((v) & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) - - #define IPMI_BT_B2H_IRQ_MASK (1 << IPMI_BT_B2H_IRQ_BIT) - #define IPMI_BT_GET_B2H_IRQ(d) (((d) >> IPMI_BT_B2H_IRQ_BIT) & 0x1) - #define IPMI_BT_SET_B2H_IRQ(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_BIT))) -+ ((((v) & 1) << IPMI_BT_B2H_IRQ_BIT))) - - typedef struct IPMIBT { - IPMIBmc *bmc; --- -2.7.4 - - - -On 12/22/2016 08:30 AM, <email address hidden> wrote: -> From: Corey Minyard <email address hidden> -> -> Macro parameters should almost always have () around them when used. -> llvm reported an error on this. -> -> Reported in https://bugs.launchpad.net/bugs/1651167 -> -> Signed-off-by: Corey Minyard <email address hidden> -> --- -> hw/ipmi/isa_ipmi_bt.c | 18 +++++++++--------- -> 1 file changed, 9 insertions(+), 9 deletions(-) -> -> diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c -> index f036617..8a97314 100644 -> --- a/hw/ipmi/isa_ipmi_bt.c -> +++ b/hw/ipmi/isa_ipmi_bt.c -> @@ -40,37 +40,37 @@ -> #define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) -> #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) -> #define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ - -Still under-parenthesized, if the result of IPMI_BT_SET_CLR_WR() is used -in any larger expression; - -> - (((v & 1) << IPMI_BT_CLR_WR_BIT))) -> + ((((v) & 1) << IPMI_BT_CLR_WR_BIT))) - -and at the same time, you (still) have a redundant set on the second line. - -Better would be: - -((d) = (((d) & ~IPMI_BD_CLR_WR_MASK) | \ - (((v) & 1) << IPMI_BT_CLR_WR_BIT))) - -> -> #define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) -> #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) -> #define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ -> - (((v & 1) << IPMI_BT_CLR_RD_BIT))) -> + ((((v) & 1) << IPMI_BT_CLR_RD_BIT))) - -and again, throughout the patch. - - --- -Eric Blake eblake redhat com +1-919-301-3266 -Libvirt virtualization library http://libvirt.org - - - -On 12/22/2016 09:01 AM, Eric Blake wrote: -> On 12/22/2016 08:30 AM, <email address hidden> wrote: ->> From: Corey Minyard <email address hidden> ->> ->> Macro parameters should almost always have () around them when used. ->> llvm reported an error on this. ->> ->> Reported in https://bugs.launchpad.net/bugs/1651167 ->> ->> Signed-off-by: Corey Minyard <email address hidden> ->> --- ->> hw/ipmi/isa_ipmi_bt.c | 18 +++++++++--------- ->> 1 file changed, 9 insertions(+), 9 deletions(-) ->> ->> diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c ->> index f036617..8a97314 100644 ->> --- a/hw/ipmi/isa_ipmi_bt.c ->> +++ b/hw/ipmi/isa_ipmi_bt.c ->> @@ -40,37 +40,37 @@ ->> #define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) ->> #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) ->> #define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ -> Still under-parenthesized, if the result of IPMI_BT_SET_CLR_WR() is used -> in any larger expression; - -I wasn't thinking about this being used in a larger expression, but it -should be protected, -I suppose. I'll re-submit with that fixed and the extra () removed. - -Thanks, - --corey - ->> - (((v & 1) << IPMI_BT_CLR_WR_BIT))) ->> + ((((v) & 1) << IPMI_BT_CLR_WR_BIT))) -> and at the same time, you (still) have a redundant set on the second line. -> -> Better would be: -> -> ((d) = (((d) & ~IPMI_BD_CLR_WR_MASK) | \ -> (((v) & 1) << IPMI_BT_CLR_WR_BIT))) -> ->> ->> #define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) ->> #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) ->> #define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ ->> - (((v & 1) << IPMI_BT_CLR_RD_BIT))) ->> + ((((v) & 1) << IPMI_BT_CLR_RD_BIT))) -> and again, throughout the patch. -> -> - - - -From: Corey Minyard <email address hidden> - -Macro parameters should almost always have () around them when used. -llvm reported an error on this. - -Remove redundant parenthesis and put parenthesis around the entire -macros with assignments in case they are used in an expression. - -Remove some unused macros. - -Reported in https://bugs.launchpad.net/bugs/1651167 - -Signed-off-by: Corey Minyard <email address hidden> ---- - hw/ipmi/isa_ipmi_bt.c | 34 ++++++++++++---------------------- - 1 file changed, 12 insertions(+), 22 deletions(-) - -Changes in v2: - * Put parenthesis around macros that had assignment in them. - * Removed some redundant parenthesis. - * Removed some macros that were not used. - -diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c -index f036617..68bf5cd 100644 ---- a/hw/ipmi/isa_ipmi_bt.c -+++ b/hw/ipmi/isa_ipmi_bt.c -@@ -37,40 +37,30 @@ - #define IPMI_BT_HBUSY_BIT 6 - #define IPMI_BT_BBUSY_BIT 7 - --#define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) - #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) --#define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_WR_BIT))) - --#define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) - #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) --#define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_RD_BIT))) - --#define IPMI_BT_H2B_ATN_MASK (1 << IPMI_BT_H2B_ATN_BIT) - #define IPMI_BT_GET_H2B_ATN(d) (((d) >> IPMI_BT_H2B_ATN_BIT) & 0x1) --#define IPMI_BT_SET_H2B_ATN(d, v) (d) = (((d) & ~IPMI_BT_H2B_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_H2B_ATN_BIT))) - - #define IPMI_BT_B2H_ATN_MASK (1 << IPMI_BT_B2H_ATN_BIT) - #define IPMI_BT_GET_B2H_ATN(d) (((d) >> IPMI_BT_B2H_ATN_BIT) & 0x1) --#define IPMI_BT_SET_B2H_ATN(d, v) (d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_ATN_BIT))) -+#define IPMI_BT_SET_B2H_ATN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -+ (((v) & 1) << IPMI_BT_B2H_ATN_BIT))) - - #define IPMI_BT_SMS_ATN_MASK (1 << IPMI_BT_SMS_ATN_BIT) - #define IPMI_BT_GET_SMS_ATN(d) (((d) >> IPMI_BT_SMS_ATN_BIT) & 0x1) --#define IPMI_BT_SET_SMS_ATN(d, v) (d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_SMS_ATN_BIT))) -+#define IPMI_BT_SET_SMS_ATN(d, v) ((d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -+ (((v) & 1) << IPMI_BT_SMS_ATN_BIT))) - - #define IPMI_BT_HBUSY_MASK (1 << IPMI_BT_HBUSY_BIT) - #define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) --#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_HBUSY_BIT))) -+#define IPMI_BT_SET_HBUSY(d, v) ((d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -+ (((v) & 1) << IPMI_BT_HBUSY_BIT))) - - #define IPMI_BT_BBUSY_MASK (1 << IPMI_BT_BBUSY_BIT) --#define IPMI_BT_GET_BBUSY(d) (((d) >> IPMI_BT_BBUSY_BIT) & 0x1) --#define IPMI_BT_SET_BBUSY(d, v) (d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_BBUSY_BIT))) -+#define IPMI_BT_SET_BBUSY(d, v) ((d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -+ (((v) & 1) << IPMI_BT_BBUSY_BIT))) - - - /* Mask register */ -@@ -79,13 +69,13 @@ - - #define IPMI_BT_B2H_IRQ_EN_MASK (1 << IPMI_BT_B2H_IRQ_EN_BIT) - #define IPMI_BT_GET_B2H_IRQ_EN(d) (((d) >> IPMI_BT_B2H_IRQ_EN_BIT) & 0x1) --#define IPMI_BT_SET_B2H_IRQ_EN(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) -+#define IPMI_BT_SET_B2H_IRQ_EN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) |\ -+ (((v) & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) - - #define IPMI_BT_B2H_IRQ_MASK (1 << IPMI_BT_B2H_IRQ_BIT) - #define IPMI_BT_GET_B2H_IRQ(d) (((d) >> IPMI_BT_B2H_IRQ_BIT) & 0x1) --#define IPMI_BT_SET_B2H_IRQ(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_BIT))) -+#define IPMI_BT_SET_B2H_IRQ(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -+ (((v) & 1) << IPMI_BT_B2H_IRQ_BIT))) - - typedef struct IPMIBT { - IPMIBmc *bmc; --- -2.7.4 - - - -On 12/22/2016 01:18 PM, <email address hidden> wrote: -> From: Corey Minyard <email address hidden> -> -> Macro parameters should almost always have () around them when used. -> llvm reported an error on this. -> -> Remove redundant parenthesis and put parenthesis around the entire -> macros with assignments in case they are used in an expression. -> -> Remove some unused macros. -> -> Reported in https://bugs.launchpad.net/bugs/1651167 -> -> Signed-off-by: Corey Minyard <email address hidden> -> --- -> hw/ipmi/isa_ipmi_bt.c | 34 ++++++++++++---------------------- -> 1 file changed, 12 insertions(+), 22 deletions(-) - -Reviewed-by: Eric Blake <email address hidden> - --- -Eric Blake eblake redhat com +1-919-301-3266 -Libvirt virtualization library http://libvirt.org - - - -From: Corey Minyard <email address hidden> - -Macro parameters should almost always have () around them when used. -llvm reported an error on this. - -Remove redundant parenthesis and put parenthesis around the entire -macros with assignments in case they are used in an expression. - -Remove some unused macros. - -Reported in https://bugs.launchpad.net/bugs/1651167 - -Signed-off-by: Corey Minyard <email address hidden> -Reviewed-by: Eric Blake <email address hidden> ---- - hw/ipmi/isa_ipmi_bt.c | 34 ++++++++++++---------------------- - 1 file changed, 12 insertions(+), 22 deletions(-) - -Changed in v3: - * Add Eric's reviewed-by. Thanks! - -Changes in v2: - * Put parenthesis around macros that had assignment in them. - * Removed some redundant parenthesis. - * Removed some macros that were not used. - -diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c -index f036617..68bf5cd 100644 ---- a/hw/ipmi/isa_ipmi_bt.c -+++ b/hw/ipmi/isa_ipmi_bt.c -@@ -37,40 +37,30 @@ - #define IPMI_BT_HBUSY_BIT 6 - #define IPMI_BT_BBUSY_BIT 7 - --#define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) - #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) --#define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_WR_BIT))) - --#define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) - #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) --#define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ -- (((v & 1) << IPMI_BT_CLR_RD_BIT))) - --#define IPMI_BT_H2B_ATN_MASK (1 << IPMI_BT_H2B_ATN_BIT) - #define IPMI_BT_GET_H2B_ATN(d) (((d) >> IPMI_BT_H2B_ATN_BIT) & 0x1) --#define IPMI_BT_SET_H2B_ATN(d, v) (d) = (((d) & ~IPMI_BT_H2B_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_H2B_ATN_BIT))) - - #define IPMI_BT_B2H_ATN_MASK (1 << IPMI_BT_B2H_ATN_BIT) - #define IPMI_BT_GET_B2H_ATN(d) (((d) >> IPMI_BT_B2H_ATN_BIT) & 0x1) --#define IPMI_BT_SET_B2H_ATN(d, v) (d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_ATN_BIT))) -+#define IPMI_BT_SET_B2H_ATN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -+ (((v) & 1) << IPMI_BT_B2H_ATN_BIT))) - - #define IPMI_BT_SMS_ATN_MASK (1 << IPMI_BT_SMS_ATN_BIT) - #define IPMI_BT_GET_SMS_ATN(d) (((d) >> IPMI_BT_SMS_ATN_BIT) & 0x1) --#define IPMI_BT_SET_SMS_ATN(d, v) (d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -- (((v & 1) << IPMI_BT_SMS_ATN_BIT))) -+#define IPMI_BT_SET_SMS_ATN(d, v) ((d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -+ (((v) & 1) << IPMI_BT_SMS_ATN_BIT))) - - #define IPMI_BT_HBUSY_MASK (1 << IPMI_BT_HBUSY_BIT) - #define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) --#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_HBUSY_BIT))) -+#define IPMI_BT_SET_HBUSY(d, v) ((d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -+ (((v) & 1) << IPMI_BT_HBUSY_BIT))) - - #define IPMI_BT_BBUSY_MASK (1 << IPMI_BT_BBUSY_BIT) --#define IPMI_BT_GET_BBUSY(d) (((d) >> IPMI_BT_BBUSY_BIT) & 0x1) --#define IPMI_BT_SET_BBUSY(d, v) (d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -- (((v & 1) << IPMI_BT_BBUSY_BIT))) -+#define IPMI_BT_SET_BBUSY(d, v) ((d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -+ (((v) & 1) << IPMI_BT_BBUSY_BIT))) - - - /* Mask register */ -@@ -79,13 +69,13 @@ - - #define IPMI_BT_B2H_IRQ_EN_MASK (1 << IPMI_BT_B2H_IRQ_EN_BIT) - #define IPMI_BT_GET_B2H_IRQ_EN(d) (((d) >> IPMI_BT_B2H_IRQ_EN_BIT) & 0x1) --#define IPMI_BT_SET_B2H_IRQ_EN(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) -+#define IPMI_BT_SET_B2H_IRQ_EN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) |\ -+ (((v) & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) - - #define IPMI_BT_B2H_IRQ_MASK (1 << IPMI_BT_B2H_IRQ_BIT) - #define IPMI_BT_GET_B2H_IRQ(d) (((d) >> IPMI_BT_B2H_IRQ_BIT) & 0x1) --#define IPMI_BT_SET_B2H_IRQ(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -- (((v & 1) << IPMI_BT_B2H_IRQ_BIT))) -+#define IPMI_BT_SET_B2H_IRQ(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -+ (((v) & 1) << IPMI_BT_B2H_IRQ_BIT))) - - typedef struct IPMIBT { - IPMIBmc *bmc; --- -2.7.4 - - - -Ping - did this ever get applied? - -On 12/23/2016 08:07 AM, <email address hidden> wrote: -> From: Corey Minyard <email address hidden> -> -> Macro parameters should almost always have () around them when used. -> llvm reported an error on this. -> -> Remove redundant parenthesis and put parenthesis around the entire -> macros with assignments in case they are used in an expression. -> -> Remove some unused macros. -> -> Reported in https://bugs.launchpad.net/bugs/1651167 -> -> Signed-off-by: Corey Minyard <email address hidden> -> Reviewed-by: Eric Blake <email address hidden> -> --- -> hw/ipmi/isa_ipmi_bt.c | 34 ++++++++++++---------------------- -> 1 file changed, 12 insertions(+), 22 deletions(-) -> -> Changed in v3: -> * Add Eric's reviewed-by. Thanks! -> -> Changes in v2: -> * Put parenthesis around macros that had assignment in them. -> * Removed some redundant parenthesis. -> * Removed some macros that were not used. -> -> diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c -> index f036617..68bf5cd 100644 -> --- a/hw/ipmi/isa_ipmi_bt.c -> +++ b/hw/ipmi/isa_ipmi_bt.c -> @@ -37,40 +37,30 @@ -> #define IPMI_BT_HBUSY_BIT 6 -> #define IPMI_BT_BBUSY_BIT 7 -> -> -#define IPMI_BT_CLR_WR_MASK (1 << IPMI_BT_CLR_WR_BIT) -> #define IPMI_BT_GET_CLR_WR(d) (((d) >> IPMI_BT_CLR_WR_BIT) & 0x1) -> -#define IPMI_BT_SET_CLR_WR(d, v) (d) = (((d) & ~IPMI_BT_CLR_WR_MASK) | \ -> - (((v & 1) << IPMI_BT_CLR_WR_BIT))) -> -> -#define IPMI_BT_CLR_RD_MASK (1 << IPMI_BT_CLR_RD_BIT) -> #define IPMI_BT_GET_CLR_RD(d) (((d) >> IPMI_BT_CLR_RD_BIT) & 0x1) -> -#define IPMI_BT_SET_CLR_RD(d, v) (d) = (((d) & ~IPMI_BT_CLR_RD_MASK) | \ -> - (((v & 1) << IPMI_BT_CLR_RD_BIT))) -> -> -#define IPMI_BT_H2B_ATN_MASK (1 << IPMI_BT_H2B_ATN_BIT) -> #define IPMI_BT_GET_H2B_ATN(d) (((d) >> IPMI_BT_H2B_ATN_BIT) & 0x1) -> -#define IPMI_BT_SET_H2B_ATN(d, v) (d) = (((d) & ~IPMI_BT_H2B_ATN_MASK) | \ -> - (((v & 1) << IPMI_BT_H2B_ATN_BIT))) -> -> #define IPMI_BT_B2H_ATN_MASK (1 << IPMI_BT_B2H_ATN_BIT) -> #define IPMI_BT_GET_B2H_ATN(d) (((d) >> IPMI_BT_B2H_ATN_BIT) & 0x1) -> -#define IPMI_BT_SET_B2H_ATN(d, v) (d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -> - (((v & 1) << IPMI_BT_B2H_ATN_BIT))) -> +#define IPMI_BT_SET_B2H_ATN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_ATN_MASK) | \ -> + (((v) & 1) << IPMI_BT_B2H_ATN_BIT))) -> -> #define IPMI_BT_SMS_ATN_MASK (1 << IPMI_BT_SMS_ATN_BIT) -> #define IPMI_BT_GET_SMS_ATN(d) (((d) >> IPMI_BT_SMS_ATN_BIT) & 0x1) -> -#define IPMI_BT_SET_SMS_ATN(d, v) (d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -> - (((v & 1) << IPMI_BT_SMS_ATN_BIT))) -> +#define IPMI_BT_SET_SMS_ATN(d, v) ((d) = (((d) & ~IPMI_BT_SMS_ATN_MASK) | \ -> + (((v) & 1) << IPMI_BT_SMS_ATN_BIT))) -> -> #define IPMI_BT_HBUSY_MASK (1 << IPMI_BT_HBUSY_BIT) -> #define IPMI_BT_GET_HBUSY(d) (((d) >> IPMI_BT_HBUSY_BIT) & 0x1) -> -#define IPMI_BT_SET_HBUSY(d, v) (d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -> - (((v & 1) << IPMI_BT_HBUSY_BIT))) -> +#define IPMI_BT_SET_HBUSY(d, v) ((d) = (((d) & ~IPMI_BT_HBUSY_MASK) | \ -> + (((v) & 1) << IPMI_BT_HBUSY_BIT))) -> -> #define IPMI_BT_BBUSY_MASK (1 << IPMI_BT_BBUSY_BIT) -> -#define IPMI_BT_GET_BBUSY(d) (((d) >> IPMI_BT_BBUSY_BIT) & 0x1) -> -#define IPMI_BT_SET_BBUSY(d, v) (d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -> - (((v & 1) << IPMI_BT_BBUSY_BIT))) -> +#define IPMI_BT_SET_BBUSY(d, v) ((d) = (((d) & ~IPMI_BT_BBUSY_MASK) | \ -> + (((v) & 1) << IPMI_BT_BBUSY_BIT))) -> -> -> /* Mask register */ -> @@ -79,13 +69,13 @@ -> -> #define IPMI_BT_B2H_IRQ_EN_MASK (1 << IPMI_BT_B2H_IRQ_EN_BIT) -> #define IPMI_BT_GET_B2H_IRQ_EN(d) (((d) >> IPMI_BT_B2H_IRQ_EN_BIT) & 0x1) -> -#define IPMI_BT_SET_B2H_IRQ_EN(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) | \ -> - (((v & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) -> +#define IPMI_BT_SET_B2H_IRQ_EN(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_EN_MASK) |\ -> + (((v) & 1) << IPMI_BT_B2H_IRQ_EN_BIT))) -> -> #define IPMI_BT_B2H_IRQ_MASK (1 << IPMI_BT_B2H_IRQ_BIT) -> #define IPMI_BT_GET_B2H_IRQ(d) (((d) >> IPMI_BT_B2H_IRQ_BIT) & 0x1) -> -#define IPMI_BT_SET_B2H_IRQ(d, v) (d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -> - (((v & 1) << IPMI_BT_B2H_IRQ_BIT))) -> +#define IPMI_BT_SET_B2H_IRQ(d, v) ((d) = (((d) & ~IPMI_BT_B2H_IRQ_MASK) | \ -> + (((v) & 1) << IPMI_BT_B2H_IRQ_BIT))) -> -> typedef struct IPMIBT { -> IPMIBmc *bmc; -> - --- -Eric Blake eblake redhat com +1-919-301-3266 -Libvirt virtualization library http://libvirt.org - - - -Fix has been included here: -http://git.qemu.org/?p=qemu.git;a=commitdiff;h=cb9a05a4f169347f85 - |