Opened 6 weeks ago
Last modified 6 weeks ago
#19003 assigned defect
isolde sim start: OpenMMException: Error compiling kernel
| Reported by: | Owned by: | Tristan Croll | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Third Party | Version: | |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description (last modified by )
The following bug report has been submitted:
Platform: macOS-26.0-arm64-arm-64bit
ChimeraX Version: 1.8 (2024-06-10 23:15:52 UTC)
Description
(Describe the actions that caused this problem to occur here)
Log:
UCSF ChimeraX version: 1.8 (2024-06-10)
© 2016-2024 Regents of the University of California. All rights reserved.
> open /Users/grm784/Downloads/isolde-session.cxs
restore_snapshot for "NXmapHandler" returned None
restore_snapshot for "FastVolumeSurface" returned None
Exception ignored in: <function Drawing.__del__ at 0x104df6ca0>
Traceback (most recent call last):
File
"/Applications/ChimeraX-1.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/graphics/drawing.py", line 1215, in __del__
if not self.was_deleted:
^^^^^^^^^^^^^^^^
AttributeError: 'MDFFMgr' object has no attribute 'was_deleted'
restore_snapshot for "MDFFMgr" returned None
Log from Tue Sep 23 10:29:55 2025 Startup Messages
---
note | available bundle cache has not been initialized yet
UCSF ChimeraX version: 1.8 (2024-06-10)
© 2016-2024 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> open "/Users/sqv821/Desktop/PhD/Writing/Refinement/Newer SNAT2
> 2.75Å/2025_09_18_SNAT2_in_J2872_coot-coot-0.pdb"
Chain information for 2025_09_18_SNAT2_in_J2872_coot-coot-0.pdb #1
---
Chain | Description
A | No description available
> open "/Users/sqv821/Desktop/PhD/Writing/Refinement/Newer SNAT2
> 2.75Å/cryosparc_P179_J2807_003_volume_map.mrc"
Opened cryosparc_P179_J2807_003_volume_map.mrc as #2, grid size 300,300,300,
pixel 0.728, shown at level 0.0365, step 2, values float32
> clipper associate #2 toModel #1
Opened cryosparc_P179_J2807_003_volume_map.mrc as #1.1.1.1, grid size
300,300,300, pixel 0.728, shown at level 0.161, step 1, values float32
Chain information for 2025_09_18_SNAT2_in_J2872_coot-coot-0.pdb
---
Chain | Description
1.2/A | No description available
> ui mousemode right zoom
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
> ui mousemode right zoom
> volume #1.1.1.1 level 0.1869
> volume #1.1.1.1 level 0.1608
> addh
Summary of feedback from adding hydrogens to 2025_09_18_SNAT2_in_J2872_coot-
coot-0.pdb #1.2
---
notes | No usable SEQRES records for 2025_09_18_SNAT2_in_J2872_coot-coot-0.pdb (#1.2) chain A; guessing termini instead
Chain-initial residues that are actual N termini: /A GLU 65
Chain-initial residues that are not actual N termini: /A SER 280
Chain-final residues that are actual C termini: /A HIS 506
Chain-final residues that are not actual C termini: /A VAL 243
359 hydrogen bonds
Adding 'H' to /A SER 280
3324 hydrogens added
> isolde restrain ligands #1
[Repeated 1 time(s)]
> isolde start
> set selectionWidth 4
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 31 residues in model #1.2 to IUPAC-IUB
standards.
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
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
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
> isolde sim start /A
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 13 residues in model #1.2 to IUPAC-IUB
standards.
ISOLDE: stopped sim
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
> ui tool show "Ramachandran Plot"
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
[Repeated 1 time(s)]
> isolde stepto next
[Repeated 2 time(s)]
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
> volume #1.1.1.1 level 0.02858
> isolde stepto next
[Repeated 1 time(s)]
> isolde cisflip /A:464
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde stepto prev
> isolde stepto next
> isolde cisflip /A:463
ISOLDE: started sim
> isolde sim stop discardTo start
Sim termination reason: None
reverting to start
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
> isolde sim start #!1.2/A:464
ISOLDE: started sim
> isolde pepflip /A:464
[Repeated 1 time(s)]Unable to flip peptide bond after 50 rounds. Giving up.
> isolde cisflip /A:464
[Repeated 2 time(s)]
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> volume #1.1.1.1 level 0.02377
> isolde pepflip /A:464
ISOLDE: started sim
> isolde sim stop discardTo start
Sim termination reason: None
reverting to start
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde pepflip /A:351
ISOLDE: started sim
> isolde pepflip /A:351
[Repeated 1 time(s)]
> isolde cisflip /A:351
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 2 residues in model #1.2 to IUPAC-IUB
standards.
ISOLDE: stopped sim
> isolde pepflip #!1.2/A:444
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde cisflip /A:444
ISOLDE: started sim
> isolde sim stop discardTo start
Sim termination reason: None
reverting to start
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde stepto next
> isolde pepflip /A:444
ISOLDE: started sim
> isolde cisflip /A:444
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde pepflip /A:215
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 2 residues in model #1.2 to IUPAC-IUB
standards.
ISOLDE: stopped sim
> isolde pepflip #!1.2/A:462
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde cisflip /A:461
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde cisflip /A:461
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde pepflip /A:461
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
> isolde pepflip /A:462
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: stopped sim
The cached device pixel ratio value was stale on window expose. Please file a
QTBUG which explains how to reproduce.
[Repeated 1 time(s)]
> isolde cisflip #1.2/A:351
ISOLDE: started sim
> isolde cisflip #1.2/A:351
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 1 residues in model #1.2 to IUPAC-IUB
standards.
ISOLDE: stopped sim
> isolde cisflip #1.2/A:351
ISOLDE: started sim
> isolde sim stop
Sim termination reason: None
ISOLDE: Checking and correcting nomenclature for (pseudo)symmetric side
chains...
ISOLDE: Corrected atom nomenclature of 3 residues in model #1.2 to IUPAC-IUB
standards.
ISOLDE: stopped sim
> save /Users/sqv821/Desktop/PhD/Writing/isolde-session.cxs
Taking snapshot of stepper: 2025_09_18_SNAT2_in_J2872_coot-coot-0.pdb
——— End of log from Tue Sep 23 10:29:55 2025 ———
opened ChimeraX session
> isolde start
> set selectionWidth 4
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 sim start /A
Traceback (most recent call last):
File
"/Applications/ChimeraX-1.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/toolbar/tool.py", line 205, in callback
bundle_info.run_provider(session, name, session.toolbar,
display_name=display_name)
File
"/Applications/ChimeraX-1.8.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.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/toolshed/__init__.py", line 1306, in run_provider
return cls._get_func(api, "run_provider")(session, name, mgr, **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-
packages/chimerax/isolde/__init__.py", line 184, in run_provider
toolbar_command(session, name)
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-
packages/chimerax/isolde/cmd/cmd.py", line 122, in isolde_sim
isolde.start_sim()
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-
packages/chimerax/isolde/isolde.py", line 896, in start_sim
sm.start_sim()
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-
packages/chimerax/isolde/openmm/openmm_interface.py", line 401, in start_sim
sh.start_sim()
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-
packages/chimerax/isolde/openmm/openmm_interface.py", line 1432, in start_sim
self._prepare_sim()
File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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: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: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: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:296:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_xor)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:296:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_xor)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:297:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:298:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:302:1: error: illegal string literal in 'asm'
EXPOSE_FUNCTION_I_ARGS_3(ctz)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
#define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \
^
program_source:172:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
__asm("air." #EXPR "." #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:302:1: error: implicit declaration of function '___metal_ctz'
is invalid in OpenCL
program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
#define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \
^
program_source:175:10: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
return ___metal_##EXPR(x, false); \
^
<scratch space>:12:1: note: expanded from here
___metal_ctz
^
program_source:302:1: error: illegal string literal in 'asm'
EXPOSE_FUNCTION_I_ARGS_3(ctz)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \
^
program_source:172:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
__asm("air." #EXPR "." #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:302:1: error: implicit declaration of function '___metal_ctz'
is invalid in OpenCL
program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \
^
program_source:175:10: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
return ___metal_##EXPR(x, false); \
^
<scratch space>:16:1: note: expanded from here
___metal_ctz
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(sum, reduce_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:17:1: note: expanded from here
simd_sum
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:17:1: note: expanded from here
simd_sum
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:19:1: note: expanded from here
simd_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:21:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:21:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:23:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:25:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:25:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:27:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(min, reduce_min)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:29:1: note: expanded from here
simd_min
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:29:1: note: expanded from here
simd_min
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:31:1: note: expanded from here
simd_min
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(max, reduce_max)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:33:1: note: expanded from here
simd_max
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:33:1: note: expanded from here
simd_max
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:35:1: note: expanded from here
simd_max
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:37:1: note: expanded from here
simd_shuffle
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:37:1: note: expanded from here
simd_shuffle
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:37:1: note: expanded from here
simd_shuffle
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:41:1: note: expanded from here
simd_shuffle_up
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:41:1: note: expanded from here
simd_shuffle_up
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:41:1: note: expanded from here
simd_shuffle_up
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:43:1: note: expanded from here
simd_shuffle_down
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:43:1: note: expanded from here
simd_shuffle_down
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:43:1: note: expanded from here
simd_shuffle_down
^
program_source:327:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
<scratch space>:45:1: note: expanded from here
simd_shuffle_rotate_down
^
program_source:327:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
[deleted to fit within ticket limits]
^
program_source:168:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_2'
__asm("air." #EXPR "." #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:299:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_up)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:300:1: error: illegal string literal in 'asm'
DECLARE_SHUFFLE_BASE(shuffle_rotate_down)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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:302:1: error: illegal string literal in 'asm'
EXPOSE_FUNCTION_I_ARGS_3(ctz)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
#define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \
^
program_source:172:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
__asm("air." #EXPR "." #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:302:1: error: implicit declaration of function '___metal_ctz'
is invalid in OpenCL
program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
#define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \
^
program_source:175:10: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
return ___metal_##EXPR(x, false); \
^
:12:1: note: expanded from here
___metal_ctz
^
program_source:302:1: error: illegal string literal in 'asm'
EXPOSE_FUNCTION_I_ARGS_3(ctz)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \
^
program_source:172:9: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
__asm("air." #EXPR "." #AIR_TYPE); \
^~~~~~~~~~~~~~~~~~~~~~~~~~
program_source:302:1: error: implicit declaration of function '___metal_ctz'
is invalid in OpenCL
program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3'
EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \
^
program_source:175:10: note: expanded from macro '\
EXPOSE_FUNCTION_OVERLOAD_ARGS_3'
return ___metal_##EXPR(x, false); \
^
:16:1: note: expanded from here
___metal_ctz
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(sum, reduce_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:17:1: note: expanded from here
simd_sum
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:17:1: note: expanded from here
simd_sum
^
program_source:317:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:19:1: note: expanded from here
simd_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:21:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:21:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:318:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:23:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:25:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:25:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:319:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:27:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(min, reduce_min)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:29:1: note: expanded from here
simd_min
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:29:1: note: expanded from here
simd_min
^
program_source:320:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:31:1: note: expanded from here
simd_min
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(max, reduce_max)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:33:1: note: expanded from here
simd_max
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:33:1: note: expanded from here
simd_max
^
program_source:321:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:35:1: note: expanded from here
simd_max
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:37:1: note: expanded from here
simd_shuffle
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:37:1: note: expanded from here
simd_shuffle
^
program_source:323:1: error: implicit declaration of function 'simd_shuffle'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:37:1: note: expanded from here
simd_shuffle
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:324:1: error: implicit declaration of function
'simd_shuffle_xor' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:39:1: note: expanded from here
simd_shuffle_xor
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:41:1: note: expanded from here
simd_shuffle_up
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:41:1: note: expanded from here
simd_shuffle_up
^
program_source:325:1: error: implicit declaration of function
'simd_shuffle_up' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:41:1: note: expanded from here
simd_shuffle_up
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:43:1: note: expanded from here
simd_shuffle_down
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:43:1: note: expanded from here
simd_shuffle_down
^
program_source:326:1: error: implicit declaration of function
'simd_shuffle_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:43:1: note: expanded from here
simd_shuffle_down
^
program_source:327:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:45:1: note: expanded from here
simd_shuffle_rotate_down
^
program_source:327:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:45:1: note: expanded from here
simd_shuffle_rotate_down
^
program_source:327:1: error: implicit declaration of function
'simd_shuffle_rotate_down' is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:45:1: note: expanded from here
simd_shuffle_rotate_down
^
program_source:329:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL
DECLARE_SHUFFLE_UNIFORM(broadcast, broadcast)
^
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:47:1: note: expanded from here
simd_broadcast
^
program_source:329:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:47:1: note: expanded from here
simd_broadcast
^
program_source:329:1: error: implicit declaration of function 'simd_broadcast'
is invalid in OpenCL
program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM'
BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:47:1: note: expanded from here
simd_broadcast
^
program_source:330:1: error: implicit declaration of function
'simd_broadcast_first' is invalid in OpenCL
DECLARE_REDUCTION_UNIFORM(broadcast_first, broadcast_first)
^
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:49:1: note: expanded from here
simd_broadcast_first
^
program_source:330:1: error: implicit declaration of function
'simd_broadcast_first' is invalid in OpenCL
program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
#define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:305:26: note: expanded from macro '\
DECLARE_I_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:49:1: note: expanded from here
simd_broadcast_first
^
program_source:330:1: error: implicit declaration of function
'simd_broadcast_first' is invalid in OpenCL
program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM'
DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \
^
program_source:308:26: note: expanded from macro '\
DECLARE_F_REDUCTION_UNIFORM'
BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \
^
:51:1: note: expanded from here
simd_broadcast_first
^
program_source:345:1: error: implicit declaration of function 'simd_sum' is
invalid in OpenCL
DECLARE_REDUCTION_NON_UNIFORM(sum, reduce_add)
^
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) \
^
:53:1: note: expanded from here
simd_sum
^
program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \
^
:53:1: note: expanded from here
simd_sum
^
program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \
^
:55:1: note: expanded from here
simd_sum
^
program_source:346:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_sum, scan_inclusive_add)
^
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) \
^
:57:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:346:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' 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) \
^
:57:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:346:1: error: implicit declaration of function
'simd_prefix_inclusive_sum' 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) \
^
:59:1: note: expanded from here
simd_prefix_inclusive_sum
^
program_source:347:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' is invalid in OpenCL
DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_sum, scan_exclusive_add)
^
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) \
^
:61:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:347:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' 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) \
^
:61:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:347:1: error: implicit declaration of function
'simd_prefix_exclusive_sum' 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) \
^
:63:1: note: expanded from here
simd_prefix_exclusive_sum
^
program_source:348:1: error: implicit declaration of function 'simd_min' is
invalid in OpenCL
DECLARE_REDUCTION_NON_UNIFORM(min, reduce_min)
^
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) \
^
:65:1: note: expanded from here
simd_min
^
program_source:348:1: error: implicit declaration of function 'simd_min' 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) \
^
:65:1: note: expanded from here
simd_min
^
program_source:348:1: error: implicit declaration of function 'simd_min' 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) \
^
:67:1: note: expanded from here
simd_min
^
program_source:349:1: error: implicit declaration of function 'simd_max' is
invalid in OpenCL
DECLARE_REDUCTION_NON_UNIFORM(max, reduce_max)
^
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: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.8.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.
OpenGL version: 4.1 Metal - 90.5
OpenGL renderer: Apple M1
OpenGL vendor: Apple
Python: 3.11.4
Locale: en_US.UTF-8
Qt version: PyQt6 6.6.1, Qt 6.6.1
Qt runtime version: 6.6.3
Qt platform: cocoa
Hardware:
Hardware Overview:
Model Name: iMac
Model Identifier: iMac21,1
Model Number: Z12X0007MDK/A
Chip: Apple M1
Total Number of Cores: 8 (4 performance and 4 efficiency)
Memory: 16 GB
System Firmware Version: 13822.1.2
OS Loader Version: 13822.1.2
Software:
System Software Overview:
System Version: macOS 26.0 (25A354)
Kernel Version: Darwin 25.0.0
Time since boot: 7 days, 3 hours, 8 minutes
Graphics/Displays:
Apple M1:
Chipset Model: Apple M1
Type: GPU
Bus: Built-In
Total Number of Cores: 8
Vendor: Apple (0x106b)
Metal Support: Metal 4
Displays:
iMac:
Display Type: Built-In Retina LCD
Resolution: Retina 4.5K (4480 x 2520)
Main Display: Yes
Mirror: Off
Online: Yes
Automatically Adjust Brightness: Yes
Connection Type: Internal
Installed Packages:
alabaster: 0.7.16
appdirs: 1.4.4
appnope: 0.1.4
asttokens: 2.4.1
Babel: 2.15.0
beautifulsoup4: 4.12.3
blockdiag: 3.0.0
blosc2: 2.0.0
build: 1.2.1
certifi: 2023.11.17
cftime: 1.6.4
charset-normalizer: 3.3.2
ChimeraX-AddCharge: 1.5.17
ChimeraX-AddH: 2.2.6
ChimeraX-AlignmentAlgorithms: 2.0.2
ChimeraX-AlignmentHdrs: 3.5
ChimeraX-AlignmentMatrices: 2.1
ChimeraX-Alignments: 2.12.7
ChimeraX-AlphaFold: 1.0
ChimeraX-AltlocExplorer: 1.1.1
ChimeraX-AmberInfo: 1.0
ChimeraX-Arrays: 1.1
ChimeraX-Atomic: 1.57.1
ChimeraX-AtomicLibrary: 14.0.6
ChimeraX-AtomSearch: 2.0.1
ChimeraX-AxesPlanes: 2.4
ChimeraX-BasicActions: 1.1.2
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 2.4.6
ChimeraX-BondRot: 2.0.4
ChimeraX-BugReporter: 1.0.1
ChimeraX-BuildStructure: 2.12.1
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.2.7
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.2.4
ChimeraX-Clipper: 0.23.1
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.8
ChimeraX-CoreFormats: 1.2
ChimeraX-coulombic: 1.4.3
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0.1
ChimeraX-DataFormats: 1.2.3
ChimeraX-Dicom: 1.2.4
ChimeraX-DiffPlot: 1.0
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.1.1
ChimeraX-Hbonds: 2.4
ChimeraX-Help: 1.2.2
ChimeraX-HKCage: 1.3
ChimeraX-IHM: 1.1
ChimeraX-ImageFormats: 1.2
ChimeraX-IMOD: 1.0
ChimeraX-IO: 1.0.1
ChimeraX-ISOLDE: 1.8
ChimeraX-ItemsInspection: 1.0.1
ChimeraX-IUPAC: 1.0
ChimeraX-Label: 1.1.10
ChimeraX-ListInfo: 1.2.2
ChimeraX-Log: 1.1.6
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.9.1
ChimeraX-Map: 1.2
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.3
ChimeraX-MCopy: 1.0
ChimeraX-MDcrds: 2.7.1
ChimeraX-MedicalToolbar: 1.0.3
ChimeraX-Meeting: 1.0.1
ChimeraX-MLP: 1.1.1
ChimeraX-mmCIF: 2.14.1
ChimeraX-MMTF: 2.2
ChimeraX-Modeller: 1.5.17
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-Neuron: 1.0
ChimeraX-Nifti: 1.2
ChimeraX-NMRSTAR: 1.0.2
ChimeraX-NRRD: 1.2
ChimeraX-Nucleotides: 2.0.3
ChimeraX-OpenCommand: 1.13.5
ChimeraX-PDB: 2.7.5
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.1
ChimeraX-PubChem: 2.2
ChimeraX-ReadPbonds: 1.0.1
ChimeraX-Registration: 1.1.2
ChimeraX-RemoteControl: 1.0
ChimeraX-RenderByAttr: 1.4.1
ChimeraX-RenumberResidues: 1.1
ChimeraX-ResidueFit: 1.0.1
ChimeraX-RestServer: 1.2
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.0.15
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.11.2
ChimeraX-Shape: 1.0.1
ChimeraX-Shell: 1.0.1
ChimeraX-Shortcuts: 1.1.1
ChimeraX-ShowSequences: 1.0.3
ChimeraX-SideView: 1.0.1
ChimeraX-Smiles: 2.1.2
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.16.5
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.1.2
ChimeraX-ToolshedUtils: 1.2.4
ChimeraX-Topography: 1.0
ChimeraX-ToQuest: 1.0
ChimeraX-Tug: 1.0.1
ChimeraX-UI: 1.39.1
ChimeraX-uniprot: 2.3
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDockX: 1.4.3
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.2.1
cxservices: 1.2.2
cycler: 0.12.1
Cython: 3.0.10
debugpy: 1.8.1
decorator: 5.1.1
docutils: 0.20.1
executing: 2.0.1
filelock: 3.13.4
fonttools: 4.53.0
funcparserlib: 2.0.0a0
glfw: 2.7.0
grako: 3.16.5
h5py: 3.11.0
html2text: 2024.2.26
idna: 3.7
ihm: 1.0
imagecodecs: 2024.1.1
imagesize: 1.4.1
ipykernel: 6.29.2
ipython: 8.21.0
ipywidgets: 8.1.3
jedi: 0.19.1
jinja2: 3.1.4
jupyter-client: 8.6.0
jupyter-core: 5.7.2
jupyterlab-widgets: 3.0.11
kiwisolver: 1.4.5
line-profiler: 4.1.2
lxml: 5.2.1
lz4: 4.3.3
MarkupSafe: 2.1.5
matplotlib: 3.8.4
matplotlib-inline: 0.1.7
msgpack: 1.0.8
nest-asyncio: 1.6.0
netCDF4: 1.6.5
networkx: 3.3
nibabel: 5.2.0
nptyping: 2.5.0
numexpr: 2.10.0
numpy: 1.26.4
openvr: 1.26.701
packaging: 23.2
ParmEd: 4.2.2
parso: 0.8.4
pep517: 0.13.1
pexpect: 4.9.0
pillow: 10.3.0
pip: 24.0
pkginfo: 1.10.0
platformdirs: 4.2.2
prompt-toolkit: 3.0.47
psutil: 5.9.8
ptyprocess: 0.7.0
pure-eval: 0.2.2
py-cpuinfo: 9.0.0
pycollada: 0.8
pydicom: 2.4.4
pygments: 2.17.2
pynmrstar: 3.3.4
pynrrd: 1.0.0
PyOpenGL: 3.1.7
PyOpenGL-accelerate: 3.1.7
pyopenxr: 1.0.3401
pyparsing: 3.1.2
pyproject-hooks: 1.1.0
PyQt6-commercial: 6.6.1
PyQt6-Qt6: 6.6.3
PyQt6-sip: 13.6.0
PyQt6-WebEngine-commercial: 6.6.0
PyQt6-WebEngine-Qt6: 6.6.3
python-dateutil: 2.9.0.post0
pytz: 2024.1
pyzmq: 26.0.3
qtconsole: 5.5.1
QtPy: 2.4.1
RandomWords: 0.4.0
requests: 2.31.0
scipy: 1.13.0
setuptools: 69.5.1
setuptools-scm: 8.0.4
sfftk-rw: 0.8.1
six: 1.16.0
snowballstemmer: 2.2.0
sortedcontainers: 2.4.0
soupsieve: 2.5
sphinx: 7.2.6
sphinx-autodoc-typehints: 2.0.1
sphinxcontrib-applehelp: 1.0.8
sphinxcontrib-blockdiag: 3.0.0
sphinxcontrib-devhelp: 1.0.6
sphinxcontrib-htmlhelp: 2.0.5
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 1.0.7
sphinxcontrib-serializinghtml: 1.1.10
stack-data: 0.6.3
superqt: 0.6.3
tables: 3.8.0
tcia-utils: 1.5.1
tifffile: 2024.1.30
tinyarray: 1.2.4
tornado: 6.4.1
traitlets: 5.14.2
typing-extensions: 4.12.2
tzdata: 2024.1
urllib3: 2.2.1
wcwidth: 0.2.13
webcolors: 1.13
wheel: 0.43.0
wheel-filename: 1.4.1
widgetsnbextension: 4.0.11
Change History (2)
comment:1 by , 6 weeks ago
comment:2 by , 6 weeks ago
| Component: | Unassigned → Third Party |
|---|---|
| Description: | modified (diff) |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → isolde sim start: OpenMMException: Error compiling kernel |
Reported by Azadeh Shahsavar
Note:
See TracTickets
for help on using tickets.
The error: UCSF ChimeraX version: 1.8 (2024-06-10) © 2016-2024 Regents of the University of California. All rights reserved. open /Users/grm784/Downloads/isolde-session.cxs restore_snapshot for "NXmapHandler" returned None restore_snapshot for "FastVolumeSurface" returned None Exception ignored in: <function Drawing.__del__ at 0x104df6ca0> Traceback (most recent call last): File "/Applications/ChimeraX-1.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/chimerax/graphics/drawing.py", line 1215, in __del__ if not self.was_deleted: ^^^^^^^^^^^^^^^^ AttributeError: 'MDFFMgr' object has no attribute 'was_deleted' restore_snapshot for "MDFFMgr" returned None Log from Tue Sep 23 10:29:55 2025 opened ChimeraX session isolde start set selectionWidth 4Done loading forcefield isolde set simFidelityMode Medium/MediumISOLDE: setting sim fidelity mode to Medium/Medium nonbonded_cutoff_distance = 0.900000 use_gbsa = True gbsa_cutoff = 1.100000 isolde sim start /ATraceback (most recent call last): File "/Applications/ChimeraX-1.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/chimerax/toolbar/tool.py", line 205, in callback bundle_info.run_provider(session, name, session.toolbar, display_name=display_name) File "/Applications/ChimeraX-1.8.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.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/chimerax/core/toolshed/__init__.py", line 1306, in run_provider return cls._get_func(api, "run_provider")(session, name, mgr, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/__init__.py", line 184, in run_provider toolbar_command(session, name) File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/cmd/cmd.py", line 122, in isolde_sim isolde.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/isolde.py", line 896, in start_sim sm.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/openmm/openmm_interface.py", line 401, in start_sim sh.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/openmm/openmm_interface.py", line 1432, in start_sim self._prepare_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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: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: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: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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ <scratch space>:12:1: note: expanded from here ___metal_ctz ^ program_source:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ <scratch space>:16:1: note: expanded from here ___metal_ctz ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(sum, reduce_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:19:1: note: expanded from here simd_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:23:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:27:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(min, reduce_min) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:31:1: note: expanded from here simd_min ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(max, reduce_max) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:35:1: note: expanded from here simd_max ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(broadcast, broadcast) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(broadcast_first, broadcast_first) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:51:1: note: expanded from here simd_broadcast_first ^ program_source:345:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(sum, reduce_add) ^ 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) \ ^ <scratch space>:53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ <scratch space>:53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ <scratch space>:55:1: note: expanded from here simd_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ 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) \ ^ <scratch space>:57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ <scratch space>:57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ <scratch space>:59:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ 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) \ ^ <scratch space>:61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ <scratch space>:61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ <scratch space>:63:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:348:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(min, reduce_min) ^ 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) \ ^ <scratch space>:65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ <scratch space>:65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ <scratch space>:67:1: note: expanded from here simd_min ^ program_source:349:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(max, reduce_max) ^ 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) \ ^ <scratch space>: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: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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) ~~~~~~~~~~ ^ ~~~~~~~~~~~~~ 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) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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: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: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: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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ :12:1: note: expanded from here ___metal_ctz ^ program_source:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ :16:1: note: expanded from here ___metal_ctz ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(sum, reduce_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :19:1: note: expanded from here simd_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :23:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :27:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(min, reduce_min) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :31:1: note: expanded from here simd_min ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(max, reduce_max) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :35:1: note: expanded from here simd_max ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(broadcast, broadcast) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(broadcast_first, broadcast_first) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :51:1: note: expanded from here simd_broadcast_first ^ program_source:345:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(sum, reduce_add) ^ 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) \ ^ :53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ :53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ :55:1: note: expanded from here simd_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ 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) \ ^ :57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ :57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ :59:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ 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) \ ^ :61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ :61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ :63:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:348:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(min, reduce_min) ^ 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) \ ^ :65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ :65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ :67:1: note: expanded from here simd_min ^ program_source:349:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(max, reduce_max) ^ 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: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.8.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. isolde sim start /ATraceback (most recent call last): File "/Applications/ChimeraX-1.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/chimerax/toolbar/tool.py", line 205, in callback bundle_info.run_provider(session, name, session.toolbar, display_name=display_name) File "/Applications/ChimeraX-1.8.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.8.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/chimerax/core/toolshed/__init__.py", line 1306, in run_provider return cls._get_func(api, "run_provider")(session, name, mgr, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/__init__.py", line 184, in run_provider toolbar_command(session, name) File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/cmd/cmd.py", line 122, in isolde_sim isolde.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/isolde.py", line 896, in start_sim sm.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/openmm/openmm_interface.py", line 401, in start_sim sh.start_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/lib/python/site-packages/chimerax/isolde/openmm/openmm_interface.py", line 1432, in start_sim self._prepare_sim() File "/Users/grm784/Library/Application Support/ChimeraX/1.8/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.8.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.8.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) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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: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: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: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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ <scratch space>:12:1: note: expanded from here ___metal_ctz ^ program_source:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ <scratch space>:16:1: note: expanded from here ___metal_ctz ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(sum, reduce_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:19:1: note: expanded from here simd_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:23:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:27:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(min, reduce_min) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:31:1: note: expanded from here simd_min ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(max, reduce_max) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:35:1: note: expanded from here simd_max ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:37:1: note: expanded from here simd_shuffle ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:39:1: note: expanded from here simd_shuffle_xor ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:41:1: note: expanded from here simd_shuffle_up ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:43:1: note: expanded from here simd_shuffle_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(broadcast, broadcast) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:47:1: note: expanded from here simd_broadcast ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(broadcast_first, broadcast_first) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ <scratch space>:51:1: note: expanded from here simd_broadcast_first ^ program_source:345:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(sum, reduce_add) ^ 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) \ ^ <scratch space>:53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ <scratch space>:53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ <scratch space>:55:1: note: expanded from here simd_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ 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) \ ^ <scratch space>:57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ <scratch space>:57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ <scratch space>:59:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ 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) \ ^ <scratch space>:61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ <scratch space>:61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ <scratch space>:63:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:348:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(min, reduce_min) ^ 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) \ ^ <scratch space>:65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ <scratch space>:65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ <scratch space>:67:1: note: expanded from here simd_min ^ program_source:349:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(max, reduce_max) ^ 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) \ ^ <scratch space>: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: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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) \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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); \ ^ <scratch space>: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); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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)); \ ^ <scratch space>: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) ~~~~~~~~~~ ^ ~~~~~~~~~~~~~ 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) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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: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: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: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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:296:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_xor) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:297:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:298:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:299:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_up) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:300:1: error: illegal string literal in 'asm' DECLARE_SHUFFLE_BASE(shuffle_rotate_down) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:229:40: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' #define EXPOSE_FUNCTION_I_ARGS_3(EXPR) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ :12:1: note: expanded from here ___metal_ctz ^ program_source:302:1: error: illegal string literal in 'asm' EXPOSE_FUNCTION_I_ARGS_3(ctz) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:172:9: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' __asm("air." #EXPR "." #AIR_TYPE); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~ program_source:302:1: error: implicit declaration of function '___metal_ctz' is invalid in OpenCL program_source:230:49: note: expanded from macro 'EXPOSE_FUNCTION_I_ARGS_3' EXPOSE_FUNCTION_OVERLOAD_ARGS_3(EXPR, int, i32) \ ^ program_source:175:10: note: expanded from macro '\ EXPOSE_FUNCTION_OVERLOAD_ARGS_3' return ___metal_##EXPR(x, false); \ ^ :16:1: note: expanded from here ___metal_ctz ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(sum, reduce_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :17:1: note: expanded from here simd_sum ^ program_source:317:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :19:1: note: expanded from here simd_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :21:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:318:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :23:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :25:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:319:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :27:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(min, reduce_min) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :29:1: note: expanded from here simd_min ^ program_source:320:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :31:1: note: expanded from here simd_min ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(max, reduce_max) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :33:1: note: expanded from here simd_max ^ program_source:321:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :35:1: note: expanded from here simd_max ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle, shuffle) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:323:1: error: implicit declaration of function 'simd_shuffle' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :37:1: note: expanded from here simd_shuffle ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_xor, shuffle_xor) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:324:1: error: implicit declaration of function 'simd_shuffle_xor' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :39:1: note: expanded from here simd_shuffle_xor ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_up, shuffle_up) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:325:1: error: implicit declaration of function 'simd_shuffle_up' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :41:1: note: expanded from here simd_shuffle_up ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_down, shuffle_down) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:326:1: error: implicit declaration of function 'simd_shuffle_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :43:1: note: expanded from here simd_shuffle_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(shuffle_rotate_down, rotate) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:327:1: error: implicit declaration of function 'simd_shuffle_rotate_down' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :45:1: note: expanded from here simd_shuffle_rotate_down ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL DECLARE_SHUFFLE_UNIFORM(broadcast, broadcast) ^ program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:329:1: error: implicit declaration of function 'simd_broadcast' is invalid in OpenCL program_source:315:24: note: expanded from macro 'DECLARE_SHUFFLE_UNIFORM' BRIDGE_FUNCTION_ARGS_2(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :47:1: note: expanded from here simd_broadcast ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL DECLARE_REDUCTION_UNIFORM(broadcast_first, broadcast_first) ^ program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:310:56: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' #define DECLARE_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:305:26: note: expanded from macro '\ DECLARE_I_REDUCTION_UNIFORM' BRIDGE_FUNCTION_I_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :49:1: note: expanded from here simd_broadcast_first ^ program_source:330:1: error: implicit declaration of function 'simd_broadcast_first' is invalid in OpenCL program_source:311:50: note: expanded from macro 'DECLARE_REDUCTION_UNIFORM' DECLARE_I_REDUCTION_UNIFORM(METAL_OP, OPENCL_OP) \ ^ program_source:308:26: note: expanded from macro '\ DECLARE_F_REDUCTION_UNIFORM' BRIDGE_FUNCTION_F_ARGS_1(simd_##METAL_OP, sub_group_##OPENCL_OP) \ ^ :51:1: note: expanded from here simd_broadcast_first ^ program_source:345:1: error: implicit declaration of function 'simd_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(sum, reduce_add) ^ 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) \ ^ :53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ :53:1: note: expanded from here simd_sum ^ program_source:345:1: error: implicit declaration of function 'simd_sum' 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) \ ^ :55:1: note: expanded from here simd_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_inclusive_sum, scan_inclusive_add) ^ 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) \ ^ :57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ :57:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:346:1: error: implicit declaration of function 'simd_prefix_inclusive_sum' 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) \ ^ :59:1: note: expanded from here simd_prefix_inclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(prefix_exclusive_sum, scan_exclusive_add) ^ 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) \ ^ :61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ :61:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:347:1: error: implicit declaration of function 'simd_prefix_exclusive_sum' 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) \ ^ :63:1: note: expanded from here simd_prefix_exclusive_sum ^ program_source:348:1: error: implicit declaration of function 'simd_min' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(min, reduce_min) ^ 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) \ ^ :65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ :65:1: note: expanded from here simd_min ^ program_source:348:1: error: implicit declaration of function 'simd_min' 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) \ ^ :67:1: note: expanded from here simd_min ^ program_source:349:1: error: implicit declaration of function 'simd_max' is invalid in OpenCL DECLARE_REDUCTION_NON_UNIFORM(max, reduce_max) ^ 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: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.8.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. \ufeffOn 01/10/2025, 14.47, "ChimeraX" <ChimeraX-bugs-admin@cgl.ucsf.edu <mailto:ChimeraX-bugs-admin@cgl.ucsf.edu>> wrote: [Du får ikke ofte mails fra chimerax-bugs-admin@cgl.ucsf.edu <mailto:chimerax-bugs-admin@cgl.ucsf.edu>. Få mere at vide om, hvorfor dette er vigtigt, på https://aka.ms/LearnAboutSenderIdentification <https://aka.ms/LearnAboutSenderIdentification> ] #19003: ChimeraX bug report submission ------------------------+----------------------------- Reporter: ash@\u2026 | Type: defect Status: new | Priority: normal Component: Unassigned | Blocked By: Blocking: | Notify when closed: ------------------------+----------------------------- -- Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/19003> <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/19003;> ChimeraX <https://www.rbvi.ucsf.edu/chimerax/> <https://www.rbvi.ucsf.edu/chimerax/;> ChimeraX Issue Tracker