Tobias Christiansen
de0791b0a1
LibGfx: Increase bit-width of variables used in do_draw_scaled_bitmap
...
To avoid expensive floating point operations the values are put in the
upper half of an integer which is then used for calculations.
When the src_rect is sufficiently large (when, say, PixelPaint is zoomed
in x100), the precision provided by this strategy with regular
32-bit-long ints is no longer enough.
This patch changes the used types to i64, which are 64 bits wide and the
shifting is increased to 32 bits.
On the 32-bit-arch a i64 doesn't fit in a single register anymore but
it's probably okay to trust the compiler to do clever stuff around this
issue.
2021-09-11 00:09:33 +02:00
..
2021-09-04 03:35:17 +02:00
2021-08-01 08:10:16 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-05 20:08:57 +02:00
2021-08-29 01:43:09 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-06 01:53:26 +02:00
2021-08-31 01:35:08 +02:00
2021-07-28 20:25:14 +02:00
2021-08-23 01:41:53 +02:00
2021-09-03 01:51:05 +02:00
2021-08-23 01:41:53 +02:00
2021-08-23 01:41:53 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-07-21 18:02:15 +02:00
2021-07-20 02:48:29 +02:00
2021-09-04 20:30:56 +02:00
2021-08-18 11:35:51 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-07-27 01:29:50 +02:00
2021-07-27 01:29:50 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-07-19 16:34:21 +04:30
2021-07-19 16:34:21 +04:30
2021-09-11 00:09:33 +02:00
2021-09-04 03:30:03 +02:00
2021-07-28 20:21:52 +02:00
2021-07-19 16:34:21 +04:30
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-06 01:53:26 +02:00
2021-07-30 13:21:27 +02:00
2021-09-09 11:27:48 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-09-09 02:34:29 +02:00
2021-08-31 01:35:08 +02:00
2021-07-21 18:02:15 +02:00
2021-09-04 03:35:23 +02:00
2021-07-28 20:25:14 +02:00
2021-08-31 01:35:08 +02:00
2021-07-28 20:21:52 +02:00
2021-07-27 23:47:00 +02:00
2021-07-26 21:14:39 +04:30
2021-07-26 21:14:39 +04:30
2021-08-18 10:32:32 +02:00
2021-08-18 10:32:32 +02:00
2021-07-19 16:34:21 +04:30
2021-07-19 16:34:21 +04:30
2021-07-19 16:34:21 +04:30