1*61046927SAndroid Build Coastguard WorkerMesa 11.1.3 Release Notes / April 17, 2016 2*61046927SAndroid Build Coastguard Worker========================================== 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard WorkerMesa 11.1.3 is a bug fix release which fixes bugs found since the 11.1.2 5*61046927SAndroid Build Coastguard Workerrelease. 6*61046927SAndroid Build Coastguard Worker 7*61046927SAndroid Build Coastguard WorkerMesa 11.1.3 implements the OpenGL 4.1 API, but the version reported by 8*61046927SAndroid Build Coastguard WorkerglGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / 9*61046927SAndroid Build Coastguard WorkerglGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being 10*61046927SAndroid Build Coastguard Workerused. Some drivers don't support all the features required in OpenGL 11*61046927SAndroid Build Coastguard Worker4.1. OpenGL 4.1 is **only** available if requested at context creation 12*61046927SAndroid Build Coastguard Workerbecause compatibility contexts are not supported. 13*61046927SAndroid Build Coastguard Worker 14*61046927SAndroid Build Coastguard WorkerSHA256 checksums 15*61046927SAndroid Build Coastguard Worker---------------- 16*61046927SAndroid Build Coastguard Worker 17*61046927SAndroid Build Coastguard Worker:: 18*61046927SAndroid Build Coastguard Worker 19*61046927SAndroid Build Coastguard Worker 9e86c72b6b2e8adb53c1c4a0002ab267b45094d753eb9404b1db34f81ce94ccf mesa-11.1.3.tar.gz 20*61046927SAndroid Build Coastguard Worker 51f6658a214d75e4d9f05207586d7ed56ebba75c6b10841176fb6675efa310ac mesa-11.1.3.tar.xz 21*61046927SAndroid Build Coastguard Worker 22*61046927SAndroid Build Coastguard WorkerNew features 23*61046927SAndroid Build Coastguard Worker------------ 24*61046927SAndroid Build Coastguard Worker 25*61046927SAndroid Build Coastguard WorkerNone 26*61046927SAndroid Build Coastguard Worker 27*61046927SAndroid Build Coastguard WorkerBug fixes 28*61046927SAndroid Build Coastguard Worker--------- 29*61046927SAndroid Build Coastguard Worker 30*61046927SAndroid Build Coastguard WorkerThis list is likely incomplete. 31*61046927SAndroid Build Coastguard Worker 32*61046927SAndroid Build Coastguard Worker- `Bug 27512 <https://bugs.freedesktop.org/show_bug.cgi?id=27512>`__ - 33*61046927SAndroid Build Coastguard Worker Illegal instruction \_mesa_x86_64_transform_points4_general 34*61046927SAndroid Build Coastguard Worker- `Bug 91526 <https://bugs.freedesktop.org/show_bug.cgi?id=91526>`__ - 35*61046927SAndroid Build Coastguard Worker World of Warcraft (on Wine) has UI corruption with nouveau 36*61046927SAndroid Build Coastguard Worker- `Bug 92193 <https://bugs.freedesktop.org/show_bug.cgi?id=92193>`__ - 37*61046927SAndroid Build Coastguard Worker [SKL] 38*61046927SAndroid Build Coastguard Worker ES2-CTS.gtf.GL2ExtensionTests.compressed_astc_texture.compressed_astc_texture 39*61046927SAndroid Build Coastguard Worker fails 40*61046927SAndroid Build Coastguard Worker- `Bug 93358 <https://bugs.freedesktop.org/show_bug.cgi?id=93358>`__ - 41*61046927SAndroid Build Coastguard Worker [HSW] Unreal Elemental demo - assertion error in 42*61046927SAndroid Build Coastguard Worker copy_image_with_blitter 43*61046927SAndroid Build Coastguard Worker- `Bug 93418 <https://bugs.freedesktop.org/show_bug.cgi?id=93418>`__ - 44*61046927SAndroid Build Coastguard Worker Geometry Shaders output wrong vertices on Sandy Bridge 45*61046927SAndroid Build Coastguard Worker- `Bug 93524 <https://bugs.freedesktop.org/show_bug.cgi?id=93524>`__ - 46*61046927SAndroid Build Coastguard Worker Clover doesn't build 47*61046927SAndroid Build Coastguard Worker- `Bug 93667 <https://bugs.freedesktop.org/show_bug.cgi?id=93667>`__ - 48*61046927SAndroid Build Coastguard Worker Crash in eglCreateImageKHR with huge texture size 49*61046927SAndroid Build Coastguard Worker- `Bug 93813 <https://bugs.freedesktop.org/show_bug.cgi?id=93813>`__ - 50*61046927SAndroid Build Coastguard Worker Incorrect viewport range when GL_CLIP_ORIGIN is GL_UPPER_LEFT 51*61046927SAndroid Build Coastguard Worker- `Bug 94050 <https://bugs.freedesktop.org/show_bug.cgi?id=94050>`__ - 52*61046927SAndroid Build Coastguard Worker test_vec4_register_coalesce regression 53*61046927SAndroid Build Coastguard Worker- `Bug 94073 <https://bugs.freedesktop.org/show_bug.cgi?id=94073>`__ - 54*61046927SAndroid Build Coastguard Worker Miscompilation of abs_vec3_vert_xvary_ref.vert in WebGL conformance 55*61046927SAndroid Build Coastguard Worker- `Bug 94088 <https://bugs.freedesktop.org/show_bug.cgi?id=94088>`__ - 56*61046927SAndroid Build Coastguard Worker [llvmpipe] SIGFPE pthread_barrier_destroy.c:40 57*61046927SAndroid Build Coastguard Worker- `Bug 94193 <https://bugs.freedesktop.org/show_bug.cgi?id=94193>`__ - 58*61046927SAndroid Build Coastguard Worker [llvmpipe] Line antialiasing looks different when GL_LINE_STIPPLE is 59*61046927SAndroid Build Coastguard Worker enabled with pattern 0xffff 60*61046927SAndroid Build Coastguard Worker- `Bug 94195 <https://bugs.freedesktop.org/show_bug.cgi?id=94195>`__ - 61*61046927SAndroid Build Coastguard Worker [llvmpipe] Does not build with LLVM 3.7.x on Windows 62*61046927SAndroid Build Coastguard Worker- `Bug 94388 <https://bugs.freedesktop.org/show_bug.cgi?id=94388>`__ - 63*61046927SAndroid Build Coastguard Worker r600_blit.c:281: r600_decompress_depth_textures: Assertion 64*61046927SAndroid Build Coastguard Worker \`tex->is_depth && !tex->is_flushing_texture' failed. 65*61046927SAndroid Build Coastguard Worker- `Bug 94412 <https://bugs.freedesktop.org/show_bug.cgi?id=94412>`__ - 66*61046927SAndroid Build Coastguard Worker Trine 3 misrender 67*61046927SAndroid Build Coastguard Worker- `Bug 94481 <https://bugs.freedesktop.org/show_bug.cgi?id=94481>`__ - 68*61046927SAndroid Build Coastguard Worker softpipe - access violation in img_filter_2d_nearest 69*61046927SAndroid Build Coastguard Worker- `Bug 94595 <https://bugs.freedesktop.org/show_bug.cgi?id=94595>`__ - 70*61046927SAndroid Build Coastguard Worker [Mesa AMD&swrast] Texture views attached as framebuffers return their 71*61046927SAndroid Build Coastguard Worker viewed tecture's color encoding and render incorrectly 72*61046927SAndroid Build Coastguard Worker- `Bug 94954 <https://bugs.freedesktop.org/show_bug.cgi?id=94954>`__ - 73*61046927SAndroid Build Coastguard Worker test_vec4_copy_propagation fails in \`make check\` 74*61046927SAndroid Build Coastguard Worker 75*61046927SAndroid Build Coastguard WorkerChanges 76*61046927SAndroid Build Coastguard Worker------- 77*61046927SAndroid Build Coastguard Worker 78*61046927SAndroid Build Coastguard WorkerAnuj Phogat (1): 79*61046927SAndroid Build Coastguard Worker 80*61046927SAndroid Build Coastguard Worker- i965: Fix assert conditions for src/dst x/y offsets 81*61046927SAndroid Build Coastguard Worker 82*61046927SAndroid Build Coastguard WorkerBen Widawsky (2): 83*61046927SAndroid Build Coastguard Worker 84*61046927SAndroid Build Coastguard Worker- i965: Make sure we blit a full compressed block 85*61046927SAndroid Build Coastguard Worker- i965/skl: Add two missing device IDs 86*61046927SAndroid Build Coastguard Worker 87*61046927SAndroid Build Coastguard WorkerBrian Paul (1): 88*61046927SAndroid Build Coastguard Worker 89*61046927SAndroid Build Coastguard Worker- mesa: fix incorrect viewport position when GL_CLIP_ORIGIN = 90*61046927SAndroid Build Coastguard Worker GL_LOWER_LEFT 91*61046927SAndroid Build Coastguard Worker 92*61046927SAndroid Build Coastguard WorkerChris Forbes (1): 93*61046927SAndroid Build Coastguard Worker 94*61046927SAndroid Build Coastguard Worker- i965/blorp: Fix hiz ops on MSAA surfaces 95*61046927SAndroid Build Coastguard Worker 96*61046927SAndroid Build Coastguard WorkerChristian König (1): 97*61046927SAndroid Build Coastguard Worker 98*61046927SAndroid Build Coastguard Worker- radeon/uvd: disable MPEG1 99*61046927SAndroid Build Coastguard Worker 100*61046927SAndroid Build Coastguard WorkerChristian Schmidbauer (1): 101*61046927SAndroid Build Coastguard Worker 102*61046927SAndroid Build Coastguard Worker- st/nine: specify WINAPI only for i386 and amd64 103*61046927SAndroid Build Coastguard Worker 104*61046927SAndroid Build Coastguard WorkerDaniel Czarnowski (3): 105*61046927SAndroid Build Coastguard Worker 106*61046927SAndroid Build Coastguard Worker- egl_dri2: NULL check for xcb_dri2_get_buffers_reply() 107*61046927SAndroid Build Coastguard Worker- egl_dri2: set correct error code if swapbuffers fails 108*61046927SAndroid Build Coastguard Worker- egl: support EGL_LARGEST_PBUFFER in eglCreatePbufferSurface(...) 109*61046927SAndroid Build Coastguard Worker 110*61046927SAndroid Build Coastguard WorkerDave Airlie (1): 111*61046927SAndroid Build Coastguard Worker 112*61046927SAndroid Build Coastguard Worker- mesa/fbobject: propogate Layered when reusing attachments. 113*61046927SAndroid Build Coastguard Worker 114*61046927SAndroid Build Coastguard WorkerDerek Foreman (1): 115*61046927SAndroid Build Coastguard Worker 116*61046927SAndroid Build Coastguard Worker- egl/wayland: Try to use wl_surface.damage_buffer for 117*61046927SAndroid Build Coastguard Worker SwapBuffersWithDamage 118*61046927SAndroid Build Coastguard Worker 119*61046927SAndroid Build Coastguard WorkerDongwon Kim (1): 120*61046927SAndroid Build Coastguard Worker 121*61046927SAndroid Build Coastguard Worker- egl: move Null check to eglGetSyncAttribKHR to prevent Segfault 122*61046927SAndroid Build Coastguard Worker 123*61046927SAndroid Build Coastguard WorkerEmil Velikov (10): 124*61046927SAndroid Build Coastguard Worker 125*61046927SAndroid Build Coastguard Worker- docs: add sha256 checksums for 11.1.2 126*61046927SAndroid Build Coastguard Worker- get-pick-list.sh: Require explicit "11.1" for nominating stable 127*61046927SAndroid Build Coastguard Worker patches 128*61046927SAndroid Build Coastguard Worker- cherry-ignore: do not pick nv50/ir commit 129*61046927SAndroid Build Coastguard Worker- automake: add nine to make distcheck 130*61046927SAndroid Build Coastguard Worker- install-gallium-links: port changes from install-lib-links 131*61046927SAndroid Build Coastguard Worker- automake: add more missing options for make distcheck 132*61046927SAndroid Build Coastguard Worker- mesa; add get-extra-pick-list.sh script into bin/ 133*61046927SAndroid Build Coastguard Worker- egl/x11: check the return value of xcb_dri2_get_buffers_reply() 134*61046927SAndroid Build Coastguard Worker- nvc/ir: remove duplicate variable declaration 135*61046927SAndroid Build Coastguard Worker- Update version to 11.1.3 136*61046927SAndroid Build Coastguard Worker 137*61046927SAndroid Build Coastguard WorkerFrancisco Jerez (4): 138*61046927SAndroid Build Coastguard Worker 139*61046927SAndroid Build Coastguard Worker- i965: Reupload push and pull constants when we get new shader image 140*61046927SAndroid Build Coastguard Worker unit state. 141*61046927SAndroid Build Coastguard Worker- i965/fs: Add missing analysis invalidation in opt_sampler_eot(). 142*61046927SAndroid Build Coastguard Worker- i965/fs: Add missing analysis invalidation in fixup_3src_null_dest(). 143*61046927SAndroid Build Coastguard Worker- i965/vec4: Consider removal of no-op MOVs as progress during register 144*61046927SAndroid Build Coastguard Worker coalesce. 145*61046927SAndroid Build Coastguard Worker 146*61046927SAndroid Build Coastguard WorkerIlia Mirkin (21): 147*61046927SAndroid Build Coastguard Worker 148*61046927SAndroid Build Coastguard Worker- nvc0/ir: fix converting between predicate and gpr 149*61046927SAndroid Build Coastguard Worker- nvc0: add some missing PUSH_SPACE's 150*61046927SAndroid Build Coastguard Worker- nvc0: avoid negatives in PUSH_SPACE argument 151*61046927SAndroid Build Coastguard Worker- glsl: make sure builtins are initialized before getting the shader 152*61046927SAndroid Build Coastguard Worker- glsl: return cloned signature, not the builtin one 153*61046927SAndroid Build Coastguard Worker- nv50/ir: fix quadop emission in the presence of predication 154*61046927SAndroid Build Coastguard Worker- st/mesa: fix up result_src.type when doing i2u/u2i conversions 155*61046927SAndroid Build Coastguard Worker- meta/copy_image: use precomputed dst_internal_format to avoid 156*61046927SAndroid Build Coastguard Worker segfault 157*61046927SAndroid Build Coastguard Worker- st/mesa: force depth mode to GL_RED for sized depth/stencil formats 158*61046927SAndroid Build Coastguard Worker- glx: update to updated version of EXT_create_context_es2_profile 159*61046927SAndroid Build Coastguard Worker- nv50,nvc0: bump minimum texture buffer offset alignment 160*61046927SAndroid Build Coastguard Worker- nvc0: reset TFB bufctx when we no longer hold a reference to the 161*61046927SAndroid Build Coastguard Worker buffers 162*61046927SAndroid Build Coastguard Worker- glsl: avoid stack smashing when there are too many attributes 163*61046927SAndroid Build Coastguard Worker- nvc0: fix blit triangle size to fully cover FB's > 8192x8192 164*61046927SAndroid Build Coastguard Worker- nv50: reset TFB bufctx when we no longer hold a reference to the 165*61046927SAndroid Build Coastguard Worker buffers 166*61046927SAndroid Build Coastguard Worker- nv50/ir: force-enable derivatives on TXD ops 167*61046927SAndroid Build Coastguard Worker- st/mesa: only minify depth for 3d targets 168*61046927SAndroid Build Coastguard Worker- nv50/ir: fix indirect texturing for non-array textures on nvc0 169*61046927SAndroid Build Coastguard Worker- nvc0/ir: fix picking of coordinates from tex instruction for 170*61046927SAndroid Build Coastguard Worker textureGrad 171*61046927SAndroid Build Coastguard Worker- nvc0: disable primitive restart and index bias during blits 172*61046927SAndroid Build Coastguard Worker- nv50/ir: we can't load local memory directly into an output 173*61046927SAndroid Build Coastguard Worker 174*61046927SAndroid Build Coastguard WorkerFaith Ekstrand (1): 175*61046927SAndroid Build Coastguard Worker 176*61046927SAndroid Build Coastguard Worker- nir/lower_vec_to_movs: Better report channels handled by insert_mov 177*61046927SAndroid Build Coastguard Worker 178*61046927SAndroid Build Coastguard WorkerKenneth Graunke (3): 179*61046927SAndroid Build Coastguard Worker 180*61046927SAndroid Build Coastguard Worker- mesa: Make glGet queries initialize ctx->Debug when necessary. 181*61046927SAndroid Build Coastguard Worker- mesa: Allow Get*() of several forgotten IsEnabled() pnames. 182*61046927SAndroid Build Coastguard Worker- i965: Only magnify depth for 3D textures, not array textures. 183*61046927SAndroid Build Coastguard Worker 184*61046927SAndroid Build Coastguard WorkerKoop Mast (1): 185*61046927SAndroid Build Coastguard Worker 186*61046927SAndroid Build Coastguard Worker- st/clover: Add libelf cflags to the build 187*61046927SAndroid Build Coastguard Worker 188*61046927SAndroid Build Coastguard WorkerMarc-André Lureau (1): 189*61046927SAndroid Build Coastguard Worker 190*61046927SAndroid Build Coastguard Worker- virtio_gpu: Add virtio 1.0 PCI ID to driver map 191*61046927SAndroid Build Coastguard Worker 192*61046927SAndroid Build Coastguard WorkerMarek Olšák (3): 193*61046927SAndroid Build Coastguard Worker 194*61046927SAndroid Build Coastguard Worker- radeonsi: fix Hyper-Z on Stoney 195*61046927SAndroid Build Coastguard Worker- gallium/radeon: don't use temporary buffers for persistent mappings 196*61046927SAndroid Build Coastguard Worker- radeonsi: fix Hyper-Z hangs on P2 configs 197*61046927SAndroid Build Coastguard Worker 198*61046927SAndroid Build Coastguard WorkerMatt Turner (3): 199*61046927SAndroid Build Coastguard Worker 200*61046927SAndroid Build Coastguard Worker- i965/vec4: don't copy ATTR into 3src instructions with complex 201*61046927SAndroid Build Coastguard Worker swizzles 202*61046927SAndroid Build Coastguard Worker- i965/fs: Don't CSE negated multiplies with saturation. 203*61046927SAndroid Build Coastguard Worker- i965/vec4: Update vec4 unit tests for commit 01dacc83ff. 204*61046927SAndroid Build Coastguard Worker 205*61046927SAndroid Build Coastguard WorkerNanley Chery (2): 206*61046927SAndroid Build Coastguard Worker 207*61046927SAndroid Build Coastguard Worker- mesa/image: Make \_mesa_clip_readpixels() work with renderbuffers 208*61046927SAndroid Build Coastguard Worker- mesa/readpix: Clip ReadPixels() area to the ReadBuffer's 209*61046927SAndroid Build Coastguard Worker 210*61046927SAndroid Build Coastguard WorkerNicolai Hähnle (2): 211*61046927SAndroid Build Coastguard Worker 212*61046927SAndroid Build Coastguard Worker- r600g: clear compressed_depthtex/colortex_mask when binding buffer 213*61046927SAndroid Build Coastguard Worker texture 214*61046927SAndroid Build Coastguard Worker- st/mesa: use the texture view's format for render-to-texture 215*61046927SAndroid Build Coastguard Worker 216*61046927SAndroid Build Coastguard WorkerNishanth Peethambaran (2): 217*61046927SAndroid Build Coastguard Worker 218*61046927SAndroid Build Coastguard Worker- st/omx: Remove trailing spaces 219*61046927SAndroid Build Coastguard Worker- st/omx/dec: Correct the timestamping 220*61046927SAndroid Build Coastguard Worker 221*61046927SAndroid Build Coastguard WorkerOded Gabbay (8): 222*61046927SAndroid Build Coastguard Worker 223*61046927SAndroid Build Coastguard Worker- gallium/radeon: Correctly translate colorswaps for big endian 224*61046927SAndroid Build Coastguard Worker- llvmpipe: use vpkswss when dst is signed 225*61046927SAndroid Build Coastguard Worker- gallium/radeon: return correct values for BE in 226*61046927SAndroid Build Coastguard Worker r600_translate_colorswap 227*61046927SAndroid Build Coastguard Worker- gallium/radeon: remove separate BE path in r600_translate_colorswap 228*61046927SAndroid Build Coastguard Worker- gallium/r600: Don't let h/w do endian swap for colorformat 229*61046927SAndroid Build Coastguard Worker- gallium/radeon: disable evergreen_do_fast_color_clear for BE 230*61046927SAndroid Build Coastguard Worker- r600g: Do colorformat endian swap for PIPE_USAGE_STAGING 231*61046927SAndroid Build Coastguard Worker- radeonsi: Do colorformat endian swap for PIPE_USAGE_STAGING 232*61046927SAndroid Build Coastguard Worker 233*61046927SAndroid Build Coastguard WorkerOlivier Pena (1): 234*61046927SAndroid Build Coastguard Worker 235*61046927SAndroid Build Coastguard Worker- scons: support for LLVM 3.7. 236*61046927SAndroid Build Coastguard Worker 237*61046927SAndroid Build Coastguard WorkerPatrick Baggett (1): 238*61046927SAndroid Build Coastguard Worker 239*61046927SAndroid Build Coastguard Worker- mesa: Use SSE prefetch instructions rather than 3DNow instructions 240*61046927SAndroid Build Coastguard Worker 241*61046927SAndroid Build Coastguard WorkerRob Herring (10): 242*61046927SAndroid Build Coastguard Worker 243*61046927SAndroid Build Coastguard Worker- Android: remove dependence on .SECONDEXPANSION 244*61046927SAndroid Build Coastguard Worker- Android: glsl: fix dependence on YACC_HEADER_SUFFIX from build system 245*61046927SAndroid Build Coastguard Worker- Android: add -Wno-date-time flag for clang 246*61046927SAndroid Build Coastguard Worker- Android: remove headers from LOCAL_SRC_FILES 247*61046927SAndroid Build Coastguard Worker- Android: clean-up and fix DRI module path handling 248*61046927SAndroid Build Coastguard Worker- freedreno: drop unnecessary -Wno-packed-bitfield-compat 249*61046927SAndroid Build Coastguard Worker- gallium/radeon: Add space between string literal and identifier 250*61046927SAndroid Build Coastguard Worker- r600: Make enum alu_op_flags unsigned 251*61046927SAndroid Build Coastguard Worker- virtio_gpu: Add PCI ID to driver map 252*61046927SAndroid Build Coastguard Worker- Android: fix x86 gallium builds 253*61046927SAndroid Build Coastguard Worker 254*61046927SAndroid Build Coastguard WorkerRoland Scheidegger (2): 255*61046927SAndroid Build Coastguard Worker 256*61046927SAndroid Build Coastguard Worker- softpipe: fix anisotropic filtering crash 257*61046927SAndroid Build Coastguard Worker- draw: fix line stippling 258*61046927SAndroid Build Coastguard Worker 259*61046927SAndroid Build Coastguard WorkerSamuel Pitoiset (1): 260*61046927SAndroid Build Coastguard Worker 261*61046927SAndroid Build Coastguard Worker- nvc0: make sure to delete samplers used by compute shaders 262*61046927SAndroid Build Coastguard Worker 263*61046927SAndroid Build Coastguard WorkerSteinar H. Gunderson (1): 264*61046927SAndroid Build Coastguard Worker 265*61046927SAndroid Build Coastguard Worker- mesa: Fix locking of GLsync objects. 266*61046927SAndroid Build Coastguard Worker 267*61046927SAndroid Build Coastguard WorkerTamil velan (1): 268*61046927SAndroid Build Coastguard Worker 269*61046927SAndroid Build Coastguard Worker- radeon/uvd: increase max height to 4096 for VI and newer 270*61046927SAndroid Build Coastguard Worker 271*61046927SAndroid Build Coastguard WorkerThomas Hellstrom (2): 272*61046927SAndroid Build Coastguard Worker 273*61046927SAndroid Build Coastguard Worker- winsys/svga: Fix an uninitialized return value 274*61046927SAndroid Build Coastguard Worker- winsys/svga: Increase the fence timeout 275*61046927SAndroid Build Coastguard Worker 276*61046927SAndroid Build Coastguard WorkerVinson Lee (1): 277*61046927SAndroid Build Coastguard Worker 278*61046927SAndroid Build Coastguard Worker- llvmpipe: Do not use barriers if not using threads. 279*61046927SAndroid Build Coastguard Worker 280*61046927SAndroid Build Coastguard Workerxavier (1): 281*61046927SAndroid Build Coastguard Worker 282*61046927SAndroid Build Coastguard Worker- r600/sb: Do not distribute neg in expr_handler::fold_assoc() when 283*61046927SAndroid Build Coastguard Worker folding multiplications. 284