summaryrefslogtreecommitdiffstats
path: root/runtime/loc2c-runtime.h
diff options
context:
space:
mode:
authorDave Brolley <brolley@redhat.com>2009-04-14 12:34:11 -0400
committerDave Brolley <brolley@redhat.com>2009-04-14 12:34:11 -0400
commit6c39ba6093aa0b3b86aa7e6f17a23ef322bd67cd (patch)
tree7491c5c2357768fafe21752c3a16436f23c51f70 /runtime/loc2c-runtime.h
parenta2422e707214a425e4e10ac5b7c39fc5ae4dea56 (diff)
parentb9c2e81cc7a62336ec1daf374cb3411add772ab4 (diff)
downloadsystemtap-steved-6c39ba6093aa0b3b86aa7e6f17a23ef322bd67cd.tar.gz
systemtap-steved-6c39ba6093aa0b3b86aa7e6f17a23ef322bd67cd.tar.xz
systemtap-steved-6c39ba6093aa0b3b86aa7e6f17a23ef322bd67cd.zip
Merge branch 'master' of git://sources.redhat.com/git/systemtap
Diffstat (limited to 'runtime/loc2c-runtime.h')
-rw-r--r--runtime/loc2c-runtime.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/runtime/loc2c-runtime.h b/runtime/loc2c-runtime.h
index eaf47cad..620e1615 100644
--- a/runtime/loc2c-runtime.h
+++ b/runtime/loc2c-runtime.h
@@ -29,11 +29,12 @@
& (((__typeof (base)) 1 << (nbits)) - 1))
#define store_bitfield(target, base, higherbits, nbits) \
- target = (target \
- &~ ((((__typeof (base)) 1 << (nbits)) - 1) \
- << (sizeof (base) * 8 - (higherbits) - (nbits))) \
- | ((__typeof (base)) (base) \
- << (sizeof (base) * 8 - (higherbits) - (nbits))))
+ target = ((target \
+ &~ ((((__typeof (target)) 1 << (nbits)) - 1) \
+ << (sizeof (target) * 8 - (higherbits) - (nbits)))) \
+ | ((((__typeof (target)) (base)) \
+ & (((__typeof (target)) 1 << (nbits)) - 1)) \
+ << (sizeof (target) * 8 - (higherbits) - (nbits))))
/* Given a DWARF register number, fetch its intptr_t (long) value from the