1 Reduce the footprint of stack frame usage by turning
2 some large(r) structures as `static __thread` instead.
4 --- a/src/cairo-rectangular-scan-converter.c
5 +++ b/src/cairo-rectangular-scan-converter.c
6 @@ -489,7 +489,7 @@ generate (cairo_rectangular_scan_convert
7 cairo_span_renderer_t *renderer,
8 rectangle_t **rectangles)
10 - sweep_line_t sweep_line;
11 + static __thread sweep_line_t sweep_line;
12 rectangle_t *start, *stop;
13 cairo_status_t status;
15 @@ -656,7 +656,7 @@ _cairo_rectangular_scan_converter_genera
16 cairo_span_renderer_t *renderer)
18 cairo_rectangular_scan_converter_t *self = converter;
19 - rectangle_t *rectangles_stack[CAIRO_STACK_ARRAY_LENGTH (rectangle_t *)];
20 + static __thread rectangle_t *rectangles_stack[CAIRO_STACK_ARRAY_LENGTH (rectangle_t *)];
21 rectangle_t **rectangles;
22 struct _cairo_rectangular_scan_converter_chunk *chunk;
23 cairo_status_t status;