David Laight <David.Laight@xxxxxxxxxx> 于2023年4月5日周三 19:43写道: > > From: chi wu > > Sent: 05 April 2023 09:48 > > > > Christoph Hellwig <hch@xxxxxxxxxxxxx> 于2023年4月5日周三 13:40写道: > > > > > > On Mon, Apr 03, 2023 at 09:53:04PM +0800, wuchi wrote: > > > > - if (block > ext_block) > > > > - return ext_pblk + (block - ext_block); > > > > - else > > > > - return ext_pblk - (ext_block - block); > > > > + return ext_pblk + ((signed long long)block - (signed long long)ext_block); > > > > > > And what exactly is the value add here, except for turning an easy > > > to parse statement into a complex expression using casts? > > > > > Yes,it will be more complex. the original intention is to reduce the > > conditional branch. > > What is wrong with just: > return ext_pblk + block - ext_block; > (64bit + 32bit - 32bit) > oh, It's my fault. I am trapped in that ext_pblk + block may overflow, but it is ok here. thanks. > David > > - > Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK > Registration No: 1397386 (Wales)