﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
20347	isolde sim start: OpenMMException: Error compiling kernel	yanyanz@…	Tristan Croll	"{{{
The following bug report has been submitted:
Platform:        macOS-26.4.1-arm64-arm-64bit
ChimeraX Version: 1.9 (2024-12-11 19:11:19 UTC)
Description
openmm.OpenMMException: Error compiling kernel: program_source:279:1: error: illegal string literal in 'asm'
DECLARE_REDUCTION_BASE(sum)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'
#define DECLARE_REDUCTION_BASE(METAL_OP) \
^
program_source:263:44: note: expanded from macro '\
DECLARE_I_REDUCTION_BASE'
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \
^
program_source:217:40: note: expanded from macro '\
EXPOSE_FUNCTION_I_ARGS_1'
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \
^
program_source:164:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'
__asm(""air."" #EXPR ""."" #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:279:1: error: illegal string literal in 'asm'
DECLARE_REDUCTION_BASE(sum)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'
#define DECLARE_REDUCTION_BASE(METAL_OP) \
^
program_source:263:44: note: expanded from macro '\
DECLARE_I_REDUCTION_BASE'
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \
^
program_source:218:51: note: expanded from macro '\
EXPOSE_FUNCTION_I_ARGS_1'
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \
^
program_source:164:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'
__asm(""air."" #EXPR ""."" #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:279:1: error: illegal string literal in 'asm'
DECLARE_REDUCTION_BASE(sum)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'
#define DECLARE_REDUCTION_BASE(METAL_OP) \
^
program_source:264:43: note: expanded from macro '\
DECLARE_I_REDUCTION_BASE'
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \
^
program_source:217:40: note: expanded from macro '\
EXPOSE_FUNCTION_I_ARGS_1'
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \
^
program_source:164:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'
__asm(""air."" #EXPR ""."" #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:279:1: error: illegal string literal in 'asm'
DECLARE_REDUCTION_BASE(sum)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'
#define DECLARE_REDUCTION_BASE(METAL_OP) \
^
program_source:264:43: note: expanded from macro '\
DECLARE_I_REDUCTION_BASE'
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \
^
program_source:218:51: note: expanded from macro '\
EXPOSE_FUNCTION_I_ARGS_1'
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \
^
program_source:164:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'
__asm(""air."" #EXPR ""."" #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:279:1: error: illegal string literal in 'asm'
DECLARE_REDUCTION_BASE(sum)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'
DECLARE_I_REDUCTION_BASE(METAL_OP) \
^
program_source:267:44: note: expanded from macro '\
DECLARE_F_REDUCTION_BASE'
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \
^
program_source:221:40: note: expanded from macro '\
EXPOSE_FUNCTION_F_ARGS_1'
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \
^
program_source:164:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'
__asm(""air."" #EXPR ""."" #AIR_TYPE); \

Log:
UCSF ChimeraX version: 1.9 (2024-12-11)  
© 2016-2024 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /Users/yanyanzhao/Desktop/tric_2025/v100/deposited/R1.masked.zflip.mrc
> format mrc

Opened R1.masked.zflip.mrc as #1, grid size 304,304,304, pixel 1, shown at
level 0.024, step 2, values float32  

> open
> /Users/yanyanzhao/Desktop/tric_2025/v100/deposited/R1.pdb_extract_out_9249777789.cif
> format mmcif

Summary of feedback from opening
/Users/yanyanzhao/Desktop/tric_2025/v100/deposited/R1.pdb_extract_out_9249777789.cif  
---  
warnings | Unknown polymer entity '1' on line 1285  
Unknown polymer entity '2' on line 5234  
Unknown polymer entity '3' on line 9104  
Unknown polymer entity '4' on line 13021  
Unknown polymer entity '5' on line 16938  
3 messages similar to the above omitted  
Missing or incomplete sequence information. Inferred polymer connectivity.  
  
  
Chain information for R1.pdb_extract_out_9249777789.cif #2  
---  
Chain | Description  
B b | No description available  
C c | No description available  
D d | No description available  
E e | No description available  
F f | No description available  
G g | No description available  
H h | No description available  
I i | No description available  
  

> hide atoms

> show cartoons

> isolde start

> set selectionWidth 4

Forcefield cache not found or out of date. Regenerating from ffXML files. This
is normal if running ISOLDE for the first time, or after upgrading OpenMM.  

Done loading forcefield  

> isolde set simFidelityMode Medium/Medium

ISOLDE: setting sim fidelity mode to Medium/Medium  
nonbonded_cutoff_distance = 0.900000  
use_gbsa = True  
gbsa_cutoff = 1.100000  
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...  
Chain information for R1.pdb_extract_out_9249777789.cif  
---  
Chain | Description  
2.2/B 2.2/b | No description available  
2.2/C 2.2/c | No description available  
2.2/D 2.2/d | No description available  
2.2/E 2.2/e | No description available  
2.2/F 2.2/f | No description available  
2.2/G 2.2/g | No description available  
2.2/H 2.2/h | No description available  
2.2/I 2.2/i | No description available  
  
Cached rota8000-val data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-leu data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-ile data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-pro data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-phe data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-tyr data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-trp data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-ser data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-thr data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-cys data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-met data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-lys data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-his data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-arg data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-asp data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-asn data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-gln data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rota8000-glu data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rama8000-cispro data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rama8000-transpro data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rama8000-gly-sym data not found. Regenerating from text file. This is
normal if running ISOLDE for the first time  
Cached rama8000-prepro-noGP data not found. Regenerating from text file. This
is normal if running ISOLDE for the first time  
Cached rama8000-ileval-nopreP data not found. Regenerating from text file.
This is normal if running ISOLDE for the first time  
Cached rama8000-general-noGPIVpreP data not found. Regenerating from text
file. This is normal if running ISOLDE for the first time  

> clipper associate #1 toModel #2

Opened R1.masked.zflip.mrc as #2.1.1.1, grid size 304,304,304, pixel 1, shown
at step 1, values float32  

> isolde sim start /i,b-f,h,I,B-F,H,g,G

Loading residue template for ATP from internal database  
Sim termination reason: None  
ISOLDE: stopped sim  

> addh #2.2

Summary of feedback from adding hydrogens to R1.pdb_extract_out_9249777789.cif
#2.2  
---  
notes | No usable SEQRES records for R1.pdb_extract_out_9249777789.cif (#2.2) chain B; guessing termini instead  
No usable SEQRES records for R1.pdb_extract_out_9249777789.cif (#2.2) chain C;
guessing termini instead  
No usable SEQRES records for R1.pdb_extract_out_9249777789.cif (#2.2) chain D;
guessing termini instead  
No usable SEQRES records for R1.pdb_extract_out_9249777789.cif (#2.2) chain E;
guessing termini instead  
No usable SEQRES records for R1.pdb_extract_out_9249777789.cif (#2.2) chain F;
guessing termini instead  
11 messages similar to the above omitted  
Chain-initial residues that are actual N termini: /B SER 23, /C SER 16, /D LEU
28, /E ALA 21, /F ASP 28, /G GLY 14, /H GLY 19, /I VAL 13, /b SER 23, /c SER
16, /d LEU 28, /e ALA 21, /f ASP 28, /g GLY 14, /h GLY 19, /i VAL 13  
Chain-initial residues that are not actual N termini: /C GLY 482, /D ARG 417,
/c GLY 482, /d ARG 417  
Chain-final residues that are actual C termini: /B ALA 530, /C ARG 534, /D GLU
538, /E ALA 524, /F ARG 539, /G GLU 536, /H VAL 523, /b ALA 530, /c ARG 534,
/d GLU 538, /e ALA 524, /f ARG 539, /g GLU 536, /h VAL 523  
Chain-final residues that are not actual C termini: /C GLY 471, /D ASP 415, /I
SER 527, /c GLY 471, /d ASP 415, /i SER 527  
8235 hydrogen bonds  
Adding 'H' to /C GLY 482  
Adding 'H' to /D ARG 417  
Adding 'H' to /c GLY 482  
Adding 'H' to /d ARG 417  
/I SER 527 is not terminus, removing H atom from 'C'  
/i SER 527 is not terminus, removing H atom from 'C'  
64678 hydrogens added  
  

> isolde sim start /i,b-f,h,I,B-F,H,g,G

Sim termination reason: None  
ISOLDE: stopped sim  

> isolde sim start /D:105

Traceback (most recent call last):  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/toolbar/tool.py"", line 215, in callback  
bundle_info.run_provider(session, name, session.toolbar,
display_name=display_name)  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/toolshed/info.py"", line 397, in run_provider  
return api._api_caller.run_provider(api, session, name, mgr, **kw)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/toolshed/__init__.py"", line 1419, in run_provider  
return cls._get_func(api, ""run_provider"")(session, name, mgr, **kw)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-packages/chimerax/isolde/__init__.py"",
line 184, in run_provider  
toolbar_command(session, name)  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-packages/chimerax/isolde/toolbar.py"",
line 21, in toolbar_command  
run(session, f'isolde sim start {_current_residue_sel_string(session)}')  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/commands/run.py"", line 49, in run  
results = command.run(text, log=log, return_json=return_json)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/commands/cli.py"", line 3213, in run  
result = ci.function(session, **kw_args)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-packages/chimerax/isolde/cmd/cmd.py"",
line 122, in isolde_sim  
isolde.start_sim()  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-packages/chimerax/isolde/isolde.py"", line
896, in start_sim  
sm.start_sim()  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-
packages/chimerax/isolde/openmm/openmm_interface.py"", line 401, in start_sim  
sh.start_sim()  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-
packages/chimerax/isolde/openmm/openmm_interface.py"", line 1432, in start_sim  
self._prepare_sim()  
File ""/Users/yanyanzhao/Library/Application
Support/ChimeraX/1.9/lib/python/site-
packages/chimerax/isolde/openmm/openmm_interface.py"", line 1377, in
_prepare_sim  
s = self._simulation = app.Simulation(self.topology, self._system,  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/openmm/app/simulation.py"", line 103, in __init__  
self.context = mm.Context(self.system, self.integrator, platform,
platformProperties)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/openmm/openmm.py"", line 2469, in __init__  
_openmm.Context_swiginit(self, _openmm.new_Context(*args))  
^^^^^^^^^^^^^^^^^^^^^^^^^^  
openmm.OpenMMException: Error compiling kernel: program_source:279:1: error:
illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:279:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:279:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:279:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:279:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:279:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:280:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:281:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_sum)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:282:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(min)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:283:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(max)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:285:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:286:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_inclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:287:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(prefix_exclusive_product)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:288:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(and)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:288:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(and)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:288:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(and)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:288:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(and)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:289:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(or)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:289:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(or)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:289:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(or)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:289:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(or)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:290:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:290:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:263:44: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:290:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:290:1: error: illegal string literal in 'asm'  
DECLARE_I_REDUCTION_BASE(xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:264:43: note: expanded from macro 'DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:224:38: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
#define EXPOSE_FUNCTION_ARGS_2(EXPR) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:225:51: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, int, s.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:226:52: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, uint, u.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:224:38: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
#define EXPOSE_FUNCTION_ARGS_2(EXPR) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:225:51: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, int, s.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:292:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(broadcast)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:226:52: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, uint, u.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:263:44: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
#define DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:217:40: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
#define EXPOSE_FUNCTION_I_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:271:42: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
#define DECLARE_REDUCTION_BASE(METAL_OP) \  
^  
program_source:264:43: note: expanded from macro '\  
DECLARE_I_REDUCTION_BASE'  
EXPOSE_FUNCTION_I_ARGS_1(quad_##METAL_OP) \  
^  
program_source:218:51: note: expanded from macro '\  
EXPOSE_FUNCTION_I_ARGS_1'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1(EXPR, int, s.i32) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:267:44: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
#define DECLARE_F_REDUCTION_BASE(METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:293:1: error: illegal string literal in 'asm'  
DECLARE_REDUCTION_BASE(broadcast_first)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:272:36: note: expanded from macro 'DECLARE_REDUCTION_BASE'  
DECLARE_I_REDUCTION_BASE(METAL_OP) \  
^  
program_source:268:43: note: expanded from macro '\  
DECLARE_F_REDUCTION_BASE'  
EXPOSE_FUNCTION_F_ARGS_1(quad_##METAL_OP) \  
^  
program_source:221:40: note: expanded from macro '\  
EXPOSE_FUNCTION_F_ARGS_1'  
#define EXPOSE_FUNCTION_F_ARGS_1(EXPR) \  
^  
program_source:164:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_1'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:224:38: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
#define EXPOSE_FUNCTION_ARGS_2(EXPR) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:225:51: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, int, s.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:226:52: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, uint, u.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:224:38: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
#define EXPOSE_FUNCTION_ARGS_2(EXPR) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:225:51: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, int, s.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:295:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:276:41: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
EXPOSE_FUNCTION_ARGS_2(quad_##METAL_OP) \  
^  
program_source:226:52: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2(EXPR, uint, u.i32) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:296:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle_xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:275:40: note: expanded from macro 'DECLARE_SHUFFLE_BASE'  
#define DECLARE_SHUFFLE_BASE(METAL_OP) \  
^  
program_source:224:38: note: expanded from macro '\  
EXPOSE_FUNCTION_ARGS_2'  
#define EXPOSE_FUNCTION_ARGS_2(EXPR) \  
^  
program_source:168:9: note: expanded from macro '\  
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'  
__asm(""air."" #EXPR ""."" #AIR_TYPE); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:296:1: error: illegal string literal in 'asm'  
DECLARE_SHUFFLE_BASE(shuffle_xor)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
[deleted to fit within ticket limits]

program_source:349:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:69:1: note: expanded from here  
simd_max  
^  
program_source:349:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL  
program_source:339:54: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
DECLARE_I_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:336:26: note: expanded from macro '\  
DECLARE_F_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:71:1: note: expanded from here  
simd_max  
^  
program_source:351:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
DECLARE_REDUCTION_NON_UNIFORM(product, reduce_mul)  
^  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:73:1: note: expanded from here  
simd_product  
^  
program_source:351:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:73:1: note: expanded from here  
simd_product  
^  
program_source:351:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
program_source:339:54: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
DECLARE_I_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:336:26: note: expanded from macro '\  
DECLARE_F_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:75:1: note: expanded from here  
simd_product  
^  
program_source:352:1: error: implicit declaration of function
'simd_prefix_inclusive_product' is invalid in OpenCL  
DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_product, scan_inclusive_mul)  
^  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:77:1: note: expanded from here  
simd_prefix_inclusive_product  
^  
program_source:352:1: error: implicit declaration of function
'simd_prefix_inclusive_product' is invalid in OpenCL  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:77:1: note: expanded from here  
simd_prefix_inclusive_product  
^  
program_source:352:1: error: implicit declaration of function
'simd_prefix_inclusive_product' is invalid in OpenCL  
program_source:339:54: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
DECLARE_I_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:336:26: note: expanded from macro '\  
DECLARE_F_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:79:1: note: expanded from here  
simd_prefix_inclusive_product  
^  
program_source:353:1: error: implicit declaration of function
'simd_prefix_exclusive_product' is invalid in OpenCL  
DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_product, scan_exclusive_mul)  
^  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:81:1: note: expanded from here  
simd_prefix_exclusive_product  
^  
program_source:353:1: error: implicit declaration of function
'simd_prefix_exclusive_product' is invalid in OpenCL  
program_source:338:60: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
#define DECLARE_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:333:26: note: expanded from macro '\  
DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:81:1: note: expanded from here  
simd_prefix_exclusive_product  
^  
program_source:353:1: error: implicit declaration of function
'simd_prefix_exclusive_product' is invalid in OpenCL  
program_source:339:54: note: expanded from macro
'DECLARE_REDUCTION_NON_UNIFORM'  
DECLARE_I_REDUCTION_NON_UNIFORM(METAL_OP, OPENCL_OP) \  
^  
program_source:336:26: note: expanded from macro '\  
DECLARE_F_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:83:1: note: expanded from here  
simd_prefix_exclusive_product  
^  
program_source:354:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
DECLARE_I_REDUCTION_NON_UNIFORM(and, reduce_and)  
^  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:85:1: note: expanded from here  
simd_and  
^  
program_source:354:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:85:1: note: expanded from here  
simd_and  
^  
program_source:355:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
DECLARE_I_REDUCTION_NON_UNIFORM(or, reduce_or)  
^  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:87:1: note: expanded from here  
simd_or  
^  
program_source:355:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:87:1: note: expanded from here  
simd_or  
^  
program_source:356:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
DECLARE_I_REDUCTION_NON_UNIFORM(xor, reduce_xor)  
^  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:89:1: note: expanded from here  
simd_xor  
^  
program_source:356:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
program_source:333:26: note: expanded from macro
'DECLARE_I_REDUCTION_NON_UNIFORM'  
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:89:1: note: expanded from here  
simd_xor  
^  
program_source:358:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL  
DECLARE_SHUFFLE_NON_UNIFORM(broadcast, broadcast)  
^  
program_source:343:24: note: expanded from macro 'DECLARE_SHUFFLE_NON_UNIFORM'  
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:91:1: note: expanded from here  
simd_broadcast  
^  
program_source:358:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL  
program_source:343:24: note: expanded from macro 'DECLARE_SHUFFLE_NON_UNIFORM'  
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:91:1: note: expanded from here  
simd_broadcast  
^  
program_source:358:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL  
program_source:343:24: note: expanded from macro 'DECLARE_SHUFFLE_NON_UNIFORM'  
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_non_uniform_##OPENCL_OP) \  
^  
:91:1: note: expanded from here  
simd_broadcast  
^  
program_source:391:1: error: implicit declaration of function 'quad_sum' is
invalid in OpenCL  
DECLARE_REDUCTION_CLUSTERED(sum, reduce_add)  
^  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:94:1: note: expanded from here  
quad_sum  
^  
program_source:391:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:95:1: note: expanded from here  
simd_sum  
^  
program_source:391:1: error: implicit declaration of function 'quad_sum' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:96:1: note: expanded from here  
quad_sum  
^  
program_source:391:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:97:1: note: expanded from here  
simd_sum  
^  
program_source:391:1: error: implicit declaration of function 'quad_sum' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:99:1: note: expanded from here  
quad_sum  
^  
program_source:391:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:100:1: note: expanded from here  
simd_sum  
^  
program_source:392:1: error: implicit declaration of function 'quad_min' is
invalid in OpenCL  
DECLARE_REDUCTION_CLUSTERED(min, reduce_min)  
^  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:102:1: note: expanded from here  
quad_min  
^  
program_source:392:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:103:1: note: expanded from here  
simd_min  
^  
program_source:392:1: error: implicit declaration of function 'quad_min' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:104:1: note: expanded from here  
quad_min  
^  
program_source:392:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:105:1: note: expanded from here  
simd_min  
^  
program_source:392:1: error: implicit declaration of function 'quad_min' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:107:1: note: expanded from here  
quad_min  
^  
program_source:392:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:108:1: note: expanded from here  
simd_min  
^  
program_source:393:1: error: implicit declaration of function 'quad_max' is
invalid in OpenCL  
DECLARE_REDUCTION_CLUSTERED(max, reduce_max)  
^  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:110:1: note: expanded from here  
quad_max  
^  
program_source:393:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:111:1: note: expanded from here  
simd_max  
^  
program_source:393:1: error: implicit declaration of function 'quad_max' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:112:1: note: expanded from here  
quad_max  
^  
program_source:393:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:113:1: note: expanded from here  
simd_max  
^  
program_source:393:1: error: implicit declaration of function 'quad_max' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:115:1: note: expanded from here  
quad_max  
^  
program_source:393:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:116:1: note: expanded from here  
simd_max  
^  
program_source:395:1: error: implicit declaration of function 'quad_product'
is invalid in OpenCL  
DECLARE_REDUCTION_CLUSTERED(product, reduce_mul)  
^  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:118:1: note: expanded from here  
quad_product  
^  
program_source:395:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:119:1: note: expanded from here  
simd_product  
^  
program_source:395:1: error: implicit declaration of function 'quad_product'
is invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:120:1: note: expanded from here  
quad_product  
^  
program_source:395:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
program_source:384:58: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
#define DECLARE_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:360:60: note: expanded from macro '\  
DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:121:1: note: expanded from here  
simd_product  
^  
program_source:395:1: error: implicit declaration of function 'quad_product'
is invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:123:1: note: expanded from here  
quad_product  
^  
program_source:395:1: error: implicit declaration of function 'simd_product'
is invalid in OpenCL  
program_source:385:52: note: expanded from macro 'DECLARE_REDUCTION_CLUSTERED'  
DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:363:60: note: expanded from macro '\  
DECLARE_F_REDUCTION_CLUSTERED'  
#define DECLARE_F_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:249:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_F_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:124:1: note: expanded from here  
simd_product  
^  
program_source:396:1: error: implicit declaration of function 'quad_and' is
invalid in OpenCL  
DECLARE_I_REDUCTION_CLUSTERED(and, reduce_and)  
^  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:126:1: note: expanded from here  
quad_and  
^  
program_source:396:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:127:1: note: expanded from here  
simd_and  
^  
program_source:396:1: error: implicit declaration of function 'quad_and' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:128:1: note: expanded from here  
quad_and  
^  
program_source:396:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:129:1: note: expanded from here  
simd_and  
^  
program_source:397:1: error: implicit declaration of function 'quad_or' is
invalid in OpenCL  
DECLARE_I_REDUCTION_CLUSTERED(or, reduce_or)  
^  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:131:1: note: expanded from here  
quad_or  
^  
program_source:397:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:132:1: note: expanded from here  
simd_or  
^  
program_source:397:1: error: implicit declaration of function 'quad_or' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:133:1: note: expanded from here  
quad_or  
^  
program_source:397:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:134:1: note: expanded from here  
simd_or  
^  
program_source:398:1: error: implicit declaration of function 'quad_xor' is
invalid in OpenCL  
DECLARE_I_REDUCTION_CLUSTERED(xor, reduce_xor)  
^  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:136:1: note: expanded from here  
quad_xor  
^  
program_source:398:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:245:71: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
#define BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:137:1: note: expanded from here  
simd_xor  
^  
program_source:398:1: error: implicit declaration of function 'quad_xor' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:196:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return quad_##METAL_SUFFIX(x); \  
^  
:138:1: note: expanded from here  
quad_xor  
^  
program_source:398:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
program_source:360:60: note: expanded from macro
'DECLARE_I_REDUCTION_CLUSTERED'  
#define DECLARE_I_REDUCTION_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:246:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_I_ARGS_1'  
OVERLOAD_CLUSTERED_ARGS_1(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:198:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_1'  
return simd_##METAL_SUFFIX(x); \  
^  
:139:1: note: expanded from here  
simd_xor  
^  
program_source:399:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
DECLARE_B_REDUCTION_CLUSTERED(and)  
^  
program_source:369:8: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(select(0, 1, predicate != 0)); \  
^  
:141:1: note: expanded from here  
simd_and  
^  
program_source:399:1: error: implicit declaration of function 'quad_and' is
invalid in OpenCL  
program_source:378:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return quad_##OP(x); \  
^  
:143:1: note: expanded from here  
quad_and  
^  
program_source:399:1: error: implicit declaration of function 'simd_and' is
invalid in OpenCL  
program_source:380:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(x); \  
^  
:144:1: note: expanded from here  
simd_and  
^  
program_source:400:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
DECLARE_B_REDUCTION_CLUSTERED(or)  
^  
program_source:369:8: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(select(0, 1, predicate != 0)); \  
^  
:146:1: note: expanded from here  
simd_or  
^  
program_source:400:1: error: implicit declaration of function 'quad_or' is
invalid in OpenCL  
program_source:378:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return quad_##OP(x); \  
^  
:148:1: note: expanded from here  
quad_or  
^  
program_source:400:1: error: implicit declaration of function 'simd_or' is
invalid in OpenCL  
program_source:380:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(x); \  
^  
:149:1: note: expanded from here  
simd_or  
^  
program_source:401:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
DECLARE_B_REDUCTION_CLUSTERED(xor)  
^  
program_source:369:8: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(select(0, 1, predicate != 0)); \  
^  
:151:1: note: expanded from here  
simd_xor  
^  
program_source:401:1: error: implicit declaration of function 'quad_xor' is
invalid in OpenCL  
program_source:378:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return quad_##OP(x); \  
^  
:153:1: note: expanded from here  
quad_xor  
^  
program_source:401:1: error: implicit declaration of function 'simd_xor' is
invalid in OpenCL  
program_source:380:12: note: expanded from macro
'DECLARE_B_REDUCTION_CLUSTERED'  
return simd_##OP(x); \  
^  
:154:1: note: expanded from here  
simd_xor  
^  
program_source:403:1: error: implicit declaration of function
'quad_shuffle_rotate_down' is invalid in OpenCL  
DECLARE_SHUFFLE_CLUSTERED(shuffle_rotate_down, rotate)  
^  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:252:69: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
#define BRIDGE_FUNCTION_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:208:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return quad_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:156:1: note: expanded from here  
quad_shuffle_rotate_down  
^  
program_source:403:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:252:69: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
#define BRIDGE_FUNCTION_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR) \  
^  
program_source:210:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return simd_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:157:1: note: expanded from here  
simd_shuffle_rotate_down  
^  
program_source:403:1: error: implicit declaration of function
'quad_shuffle_rotate_down' is invalid in OpenCL  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:253:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
OVERLOAD_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:208:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return quad_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:158:1: note: expanded from here  
quad_shuffle_rotate_down  
^  
program_source:403:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:253:59: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
OVERLOAD_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR, int) \  
^  
program_source:210:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return simd_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:159:1: note: expanded from here  
simd_shuffle_rotate_down  
^  
program_source:403:1: error: implicit declaration of function
'quad_shuffle_rotate_down' is invalid in OpenCL  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:254:60: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
OVERLOAD_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR, uint) \  
^  
program_source:208:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return quad_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:160:1: note: expanded from here  
quad_shuffle_rotate_down  
^  
program_source:403:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL  
program_source:388:56: note: expanded from macro 'DECLARE_SHUFFLE_CLUSTERED'  
#define DECLARE_SHUFFLE_CLUSTERED(METAL_OP, OPENCL_OP) \  
^  
program_source:254:60: note: expanded from macro '\  
BRIDGE_FUNCTION_CLUSTERED_ARGS_2'  
OVERLOAD_CLUSTERED_ARGS_2(METAL_SUFFIX, OPENCL_EXPR, uint) \  
^  
program_source:210:12: note: expanded from macro '\  
OVERLOAD_CLUSTERED_ARGS_2'  
return simd_##METAL_SUFFIX(x, ushort(delta)); \  
^  
:161:1: note: expanded from here  
simd_shuffle_rotate_down  
^  
program_source:409:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(simd_is_first, , bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:410:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(simd_all, bool expr, bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:411:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(simd_any, bool expr, bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:412:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(simd_ballot, bool expr, ulong, .i64)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:413:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(simd_active_threads_mask, , ulong, .i64)  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:415:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(quad_is_first, , bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:416:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(quad_all, bool expr, bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:417:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(quad_any, bool expr, bool, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:418:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(quad_ballot, bool expr, ushort, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:419:1: error: illegal string literal in 'asm'  
EXPOSE_BALLOT(quad_active_threads_mask, , ushort, )  
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:407:9: note: expanded from macro 'EXPOSE_BALLOT'  
__asm(""air."" #FUNC_EXPR #AIR_EXPR); \  
^~~~~~~~~~~~~~~~~~~~~~~~~~~  
program_source:422:23: error: implicit declaration of function 'simd_is_first'
is invalid in OpenCL  
return select(0, 1, simd_is_first());  
^  
program_source:426:23: error: implicit declaration of function 'simd_all' is
invalid in OpenCL  
return select(0, 1, simd_all(predicate != 0));  
^  
program_source:430:23: error: implicit declaration of function 'simd_any' is
invalid in OpenCL  
return select(0, 1, simd_any(predicate != 0));  
^  
program_source:434:23: error: implicit declaration of function 'simd_all' is
invalid in OpenCL  
return select(0, 1, simd_all(predicate != 0));  
^  
program_source:438:23: error: implicit declaration of function 'simd_any' is
invalid in OpenCL  
return select(0, 1, simd_any(predicate != 0));  
^  
program_source:443:14: error: implicit declaration of function 'simd_ballot'
is invalid in OpenCL  
output.x = simd_ballot(predicate != 0);  
^  
program_source:480:9: error: illegal string literal in 'asm'  
__asm(""air.simdgroup.barrier"");  
^~~~~~~~~~~~~~~~~~~~~~~  
program_source:487:3: error: implicit declaration of function
'__metal_simdgroup_barrier' is invalid in OpenCL  
__metal_simdgroup_barrier(flags, 1);  
^  
program_source:487:3: note: did you mean 'simdgroup_barrier'?  
program_source:483:6: note: 'simdgroup_barrier' declared here  
void simdgroup_barrier(int flags) {  
^  
program_source:681:9: error: implicit declaration of function 'simd_is_first'
is invalid in OpenCL  
if (simd_is_first()) {  
^  
program_source:673:45: warning: comparison of integers of different signs:
'__private unsigned int' and '__private int' [-Wsign-compare]  
for (unsigned int index = thread; index < bufferSize; index +=
get_local_size(0))  
~~~~~ ^ ~~~~~~~~~~  
program_source:685:45: warning: comparison of integers of different signs:
'unsigned int' and '__private int' [-Wsign-compare]  
if (thread%(32*2) == 0 && thread+32 < workGroupSize)  
~~~~~~~~~ ^ ~~~~~~~~~~~~~  
program_source:689:45: warning: comparison of integers of different signs:
'unsigned int' and '__private int' [-Wsign-compare]  
if (thread%(64*2) == 0 && thread+64 < workGroupSize)  
~~~~~~~~~ ^ ~~~~~~~~~~~~~  
program_source:693:47: warning: comparison of integers of different signs:
'unsigned int' and '__private int' [-Wsign-compare]  
if (thread%(128*2) == 0 && thread+128 < workGroupSize)  
~~~~~~~~~~ ^ ~~~~~~~~~~~~~  
  
  
File
""/Applications/ChimeraX-1.9.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/openmm/openmm.py"", line 2469, in __init__  
_openmm.Context_swiginit(self, _openmm.new_Context(*args))  
^^^^^^^^^^^^^^^^^^^^^^^^^^  
  
See log for complete Python traceback.  
  

Failed to send bug report. Possibly no internet connection.  

[Repeated 1 time(s)]




OpenGL version: 4.1 Metal - 90.5
OpenGL renderer: Apple M3 Max
OpenGL vendor: Apple

Python: 3.11.4
Locale: en_US.UTF-8
Qt version: PyQt6 6.7.1, Qt 6.7.1
Qt runtime version: 6.7.3
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: Mac15,8
      Model Number: Z1AW001BYLL/A
      Chip: Apple M3 Max
      Total Number of Cores: 16 (12 Performance and 4 Efficiency)
      Memory: 64 GB
      System Firmware Version: 18000.101.7
      OS Loader Version: 18000.101.7

Software:

    System Software Overview:

      System Version: macOS 26.4.1 (25E253)
      Kernel Version: Darwin 25.4.0
      Time since boot: 7 days, 22 hours, 27 minutes

Graphics/Displays:

    Apple M3 Max:

      Chipset Model: Apple M3 Max
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 40
      Vendor: Apple (0x106b)
      Metal Support: Metal 4
      Displays:
        Color LCD:
          Display Type: Built-in Liquid Retina XDR Display
          Resolution: 3024 x 1964 Retina
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: Yes
          Connection Type: Internal


Installed Packages:
    alabaster: 1.0.0
    anyio: 4.7.0
    appdirs: 1.4.4
    appnope: 0.1.4
    asttokens: 3.0.0
    auditwheel: 6.1.0
    autocommand: 2.2.2
    babel: 2.16.0
    backports.tarfile: 1.2.0
    beautifulsoup4: 4.12.3
    blockdiag: 3.0.0
    blosc2: 3.0.0
    build: 1.2.1
    certifi: 2023.11.17
    cftime: 1.6.4.post1
    charset-normalizer: 3.4.0
    ChimeraX-AddCharge: 1.5.18
    ChimeraX-AddH: 2.2.6
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.5
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 2.16.1
    ChimeraX-AlphaFold: 1.0.1
    ChimeraX-AltlocExplorer: 1.1.2
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.58.8
    ChimeraX-AtomicLibrary: 14.1.11
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.4
    ChimeraX-BasicActions: 1.1.2
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 3.0.0
    ChimeraX-BondRot: 2.0.4
    ChimeraX-BugReporter: 1.0.1
    ChimeraX-BuildStructure: 2.13.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.4.0
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.4
    ChimeraX-ChangeChains: 1.1
    ChimeraX-CheckWaters: 1.4
    ChimeraX-ChemGroup: 2.0.1
    ChimeraX-Clashes: 2.3
    ChimeraX-Clipper: 0.24.0
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.6
    ChimeraX-CommandLine: 1.2.5
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.9
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.4
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.3
    ChimeraX-Dicom: 1.2.6
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.1.3
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ESMFold: 1.0
    ChimeraX-FileHistory: 1.0.1
    ChimeraX-FunctionKey: 1.0.1
    ChimeraX-Geometry: 1.3
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.4.1
    ChimeraX-Hbonds: 2.5
    ChimeraX-Help: 1.3
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.3
    ChimeraX-ISOLDE: 1.9
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-IUPAC: 1.0
    ChimeraX-KVFinder: 1.2.1
    ChimeraX-Label: 1.1.14
    ChimeraX-ListInfo: 1.2.2
    ChimeraX-Log: 1.2
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.9.1
    ChimeraX-Map: 1.3
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0.1
    ChimeraX-MapFilter: 2.0.1
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1.1
    ChimeraX-Markers: 1.0.1
    ChimeraX-Mask: 1.0.2
    ChimeraX-MatchMaker: 2.1.6
    ChimeraX-MCopy: 1.0
    ChimeraX-MDcrds: 2.7.2
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.14.2
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.18
    ChimeraX-ModelPanel: 1.5
    ChimeraX-ModelSeries: 1.0.1
    ChimeraX-Mol2: 2.0.3
    ChimeraX-Mole: 1.0
    ChimeraX-Morph: 1.0.2
    ChimeraX-MouseModes: 1.2
    ChimeraX-Movie: 1.0
    ChimeraX-MutationScores: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nifti: 1.2
    ChimeraX-NMRSTAR: 1.0.2
    ChimeraX-NRRD: 1.2
    ChimeraX-Nucleotides: 2.0.3
    ChimeraX-OpenCommand: 1.14
    ChimeraX-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.6
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.4
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1.2
    ChimeraX-PubChem: 2.2
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.6.2
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.3.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 4.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0.2
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.5.6
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.14
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.2.0
    ChimeraX-ShowSequences: 1.0.3
    ChimeraX-SideView: 1.0.1
    ChimeraX-SimilarStructures: 1.0.1
    ChimeraX-Smiles: 2.1.2
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.18.1
    ChimeraX-STL: 1.0.1
    ChimeraX-Storm: 1.0
    ChimeraX-StructMeasure: 1.2.1
    ChimeraX-Struts: 1.0.1
    ChimeraX-Surface: 1.0.1
    ChimeraX-SwapAA: 2.0.1
    ChimeraX-SwapRes: 2.5
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-TaskManager: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.2.3
    ChimeraX-ToolshedUtils: 1.2.4
    ChimeraX-Topography: 1.0
    ChimeraX-ToQuest: 1.0
    ChimeraX-Tug: 1.0.1
    ChimeraX-UI: 1.41
    ChimeraX-Umap: 1.0
    ChimeraX-uniprot: 2.3.1
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDockX: 1.4.4
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0.1
    ChimeraX-vrml: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0.2
    ChimeraX-WebServices: 1.1.4
    ChimeraX-Zone: 1.0.1
    colorama: 0.4.6
    comm: 0.2.2
    contourpy: 1.3.1
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.0.10
    debugpy: 1.8.9
    decorator: 5.1.1
    docutils: 0.21.2
    executing: 2.1.0
    filelock: 3.15.4
    fonttools: 4.55.3
    funcparserlib: 2.0.0a0
    glfw: 2.8.0
    grako: 3.16.5
    h11: 0.14.0
    h5py: 3.12.1
    html2text: 2024.2.26
    httpcore: 1.0.7
    httpx: 0.28.1
    idna: 3.10
    ihm: 1.3
    imagecodecs: 2024.6.1
    imagesize: 1.4.1
    importlib_metadata: 8.0.0
    importlib_resources: 6.4.0
    inflect: 7.3.1
    ipykernel: 6.29.5
    ipython: 8.26.0
    ipywidgets: 8.1.5
    jaraco.context: 5.3.0
    jaraco.functools: 4.0.1
    jaraco.text: 3.12.1
    jedi: 0.19.1
    Jinja2: 3.1.4
    jupyter_client: 8.6.2
    jupyter_core: 5.7.2
    jupyterlab_widgets: 3.0.13
    kiwisolver: 1.4.7
    line_profiler: 4.1.3
    lxml: 5.2.2
    lz4: 4.3.3
    MarkupSafe: 3.0.2
    matplotlib: 3.9.2
    matplotlib-inline: 0.1.7
    more-itertools: 10.3.0
    msgpack: 1.0.8
    ndindex: 1.9.2
    nest-asyncio: 1.6.0
    netCDF4: 1.6.5
    networkx: 3.3
    nibabel: 5.2.0
    nptyping: 2.5.0
    numexpr: 2.10.2
    numpy: 1.26.4
    openvr: 1.26.701
    ordered-set: 4.1.0
    packaging: 23.2
    packaging: 24.1
    ParmEd: 4.2.2
    parso: 0.8.4
    pep517: 0.13.1
    pexpect: 4.9.0
    pillow: 10.4.0
    pip: 24.2
    pkginfo: 1.11.1
    platformdirs: 4.3.6
    platformdirs: 4.2.2
    prompt_toolkit: 3.0.48
    psutil: 6.0.0
    ptyprocess: 0.7.0
    pure_eval: 0.2.3
    py-cpuinfo: 9.0.0
    pycollada: 0.8
    pydicom: 2.4.4
    pyelftools: 0.31
    Pygments: 2.18.0
    pynmrstar: 3.3.4
    pynrrd: 1.0.0
    PyOpenGL: 3.1.7
    PyOpenGL-accelerate: 3.1.7
    pyopenxr: 1.0.3401
    pyparsing: 3.2.0
    pyproject_hooks: 1.2.0
    PyQt6-commercial: 6.7.1
    PyQt6-Qt6: 6.7.3
    PyQt6-WebEngine-commercial: 6.7.0
    PyQt6-WebEngine-Qt6: 6.7.3
    PyQt6-WebEngineSubwheel-Qt6: 6.7.3
    PyQt6_sip: 13.8.0
    python-dateutil: 2.9.0.post0
    pytz: 2024.2
    pyzmq: 26.2.0
    qtconsole: 5.5.2
    QtPy: 2.4.2
    qtshim: 1.0
    RandomWords: 0.4.0
    requests: 2.32.3
    scipy: 1.14.0
    setuptools: 72.1.0
    sfftk-rw: 0.8.1
    six: 1.16.0
    sniffio: 1.3.1
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    soupsieve: 2.6
    Sphinx: 8.0.2
    sphinx-autodoc-typehints: 2.2.3
    sphinxcontrib-applehelp: 2.0.0
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 2.0.0
    sphinxcontrib-htmlhelp: 2.1.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 2.0.0
    sphinxcontrib-serializinghtml: 2.0.0
    stack-data: 0.6.3
    superqt: 0.6.3
    tables: 3.10.1
    tcia_utils: 1.5.1
    tifffile: 2024.7.24
    tinyarray: 1.2.4
    tomli: 2.0.1
    tornado: 6.4.2
    traitlets: 5.14.3
    typeguard: 4.3.0
    typing_extensions: 4.12.2
    typing_extensions: 4.12.2
    tzdata: 2024.2
    urllib3: 2.2.3
    wcwidth: 0.2.13
    webcolors: 24.6.0
    wheel: 0.43.0
    wheel: 0.43.0
    wheel-filename: 1.4.1
    widgetsnbextension: 4.0.13
    zipp: 3.19.2
}}}
"	defect	assigned	normal		Third Party								all	ChimeraX
