diff options
author | Santosh Puranik <santosh.puranik@in.ibm.com> | 2015-10-28 20:31:35 +0530 |
---|---|---|
committer | Jennifer A. Stofer <stofer@us.ibm.com> | 2015-10-29 10:20:16 -0500 |
commit | 03127285544ee097a3803e5a6e4bd7c5f7edb176 (patch) | |
tree | 62a37242c428e27a97b2dec99127d91d975e82a0 /importtemp | |
parent | 5408942aaf9e04dbf82a02d6a5e8f4eb406eb8c4 (diff) | |
download | talos-sbe-03127285544ee097a3803e5a6e4bd7c5f7edb176.tar.gz talos-sbe-03127285544ee097a3803e5a6e4bd7c5f7edb176.zip |
Fix mask calculation in buffer insert function
Change-Id: I1a2a9bc2587937e800072d5c82e166ed72560621
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/21563
Tested-by: Jenkins Server
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'importtemp')
-rw-r--r-- | importtemp/fapi2/include/buffer.H | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/importtemp/fapi2/include/buffer.H b/importtemp/fapi2/include/buffer.H index 154ed4b2..b5400d41 100644 --- a/importtemp/fapi2/include/buffer.H +++ b/importtemp/fapi2/include/buffer.H @@ -476,8 +476,8 @@ class buffer (target_length - TS); // Get mask value for Target buffer - // Note: Need "& 0UL" because bit shift left for Target buffer doesn't roll off - uint64_t mask = ((~0UL << (parameterTraits<uint64_t>::bit_length() - L)) & ~0UL) + // Note: Need "& 0ULL" because bit shift left for Target buffer doesn't roll off + uint64_t mask = ((~0ULL << (parameterTraits<uint64_t>::bit_length() - L)) & ~0ULL) >> target_start; // Align the source to the target. Make things signed so we know which way to shift. @@ -550,9 +550,9 @@ class buffer (target_length - i_targetStart); // Get mask value for Target buffer - // Note: Need "& 0UL" because bit shift left for Target buffer doesn't roll off - uint64_t mask = ((~0UL << (parameterTraits<uint64_t>::bit_length() - i_len)) & - ~0UL) >> target_start; + // Note: Need "& 0ULL" because bit shift left for Target buffer doesn't roll off + uint64_t mask = ((~0ULL << (parameterTraits<uint64_t>::bit_length() - i_len)) & + ~0ULL) >> target_start; // Align the source to the target. Make things signed so we know which way to shift. int32_t shift = source_start - target_start; |