summary refs log tree commit diff stats
path: root/results/classifier/accel-gemma3:12b/kvm/1651167
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/accel-gemma3:12b/kvm/1651167')
-rw-r--r--results/classifier/accel-gemma3:12b/kvm/165116727
1 files changed, 27 insertions, 0 deletions
diff --git a/results/classifier/accel-gemma3:12b/kvm/1651167 b/results/classifier/accel-gemma3:12b/kvm/1651167
new file mode 100644
index 000000000..0a5fed210
--- /dev/null
+++ b/results/classifier/accel-gemma3:12b/kvm/1651167
@@ -0,0 +1,27 @@
+
+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.
\ No newline at end of file