# .htaccess to rewrite OpenCL refpage aliases to the actual aliased page
# This is boilerplate to which a dynamically generated list of rewrite rules
# is appended while building outputs.

Options +Indexes +FollowSymLinks

# Redirect aliases of refpages

RewriteEngine on

# Ensure we use www.
# RewriteCond %{HTTP_HOST} ^khronos.org
# RewriteCond %{HTTPS} ^on

# Avoid redirect loops
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]

RewriteRule ^atan2pi.html$ mathFunctions.html
RewriteRule ^ldexp.html$ mathFunctions.html
RewriteRule ^round.html$ mathFunctions.html
RewriteRule ^log.html$ mathFunctions.html
RewriteRule ^cl_char.html$ appScalarTypes.html
RewriteRule ^smoothstep.html$ commonFunctions.html
RewriteRule ^get_global_linear_id.html$ workItemFunctions.html
RewriteRule ^native_exp.html$ mathFunctions.html
RewriteRule ^nextafter.html$ mathFunctions.html
RewriteRule ^work_group_any.html$ workGroupFunctions.html
RewriteRule ^cbrt.html$ mathFunctions.html
RewriteRule ^half_divide.html$ mathFunctions.html
RewriteRule ^minmag.html$ mathFunctions.html
RewriteRule ^get_fence.html$ addressSpaceQualifierFuncs.html
RewriteRule ^half_powr.html$ mathFunctions.html
RewriteRule ^get_image_depth.html$ imageQueryFunctions.html
RewriteRule ^shuffle.html$ miscVectorFunctions.html
RewriteRule ^native_log10.html$ mathFunctions.html
RewriteRule ^get_global_offset.html$ workItemFunctions.html
RewriteRule ^half_log.html$ mathFunctions.html
RewriteRule ^reqd_work_group_size.html$ optionalAttributeQualifiers.html
RewriteRule ^exp.html$ mathFunctions.html
RewriteRule ^asinh.html$ mathFunctions.html
RewriteRule ^acosh.html$ mathFunctions.html
RewriteRule ^degrees.html$ commonFunctions.html
RewriteRule ^to_private.html$ addressSpaceQualifierFuncs.html
RewriteRule ^commit_read_pipe.html$ pipeFunctions.html
RewriteRule ^log2.html$ mathFunctions.html
RewriteRule ^ndrange.html$ helperFunctions.html
RewriteRule ^get_local_linear_id.html$ workItemFunctions.html
RewriteRule ^max.html$ commonFunctions.html
RewriteRule ^cl_float.html$ appScalarTypes.html
RewriteRule ^MAXFLOAT.html$ mathConstants.html
RewriteRule ^pow.html$ mathFunctions.html
RewriteRule ^popcount.html$ integerFunctions.html
RewriteRule ^frexp.html$ mathFunctions.html
RewriteRule ^cl_charn.html$ appVectorTypes.html
RewriteRule ^atomic_double.html$ atomicTypes.html
RewriteRule ^atan2.html$ mathFunctions.html
RewriteRule ^INFINITY.html$ mathConstants.html
RewriteRule ^native_cos.html$ mathFunctions.html
RewriteRule ^cl_longn.html$ appVectorTypes.html
RewriteRule ^floor.html$ mathFunctions.html
RewriteRule ^pown.html$ mathFunctions.html
RewriteRule ^write_pipe.html$ pipeFunctions.html
RewriteRule ^sincos.html$ mathFunctions.html
RewriteRule ^atomic_float.html$ atomicTypes.html
RewriteRule ^set_user_event_status.html$ eventFunctions.html
RewriteRule ^native_recip.html$ mathFunctions.html
RewriteRule ^release_event.html$ eventFunctions.html
RewriteRule ^fabs.html$ mathFunctions.html
RewriteRule ^isgreater.html$ relationalFunctions.html
RewriteRule ^acos.html$ mathFunctions.html
RewriteRule ^exp2.html$ mathFunctions.html
RewriteRule ^cos.html$ mathFunctions.html
RewriteRule ^native_exp10.html$ mathFunctions.html
RewriteRule ^fmod.html$ mathFunctions.html
RewriteRule ^read_imagei.html$ imageReadFunctions.html
RewriteRule ^rint.html$ mathFunctions.html
RewriteRule ^clz.html$ integerFunctions.html
RewriteRule ^half_log10.html$ mathFunctions.html
RewriteRule ^static.html$ storageSpecifiers.html
RewriteRule ^write_imageui.html$ imageWriteFunctions.html
RewriteRule ^select.html$ relationalFunctions.html
RewriteRule ^islessgreater.html$ relationalFunctions.html
RewriteRule ^rsqrt.html$ mathFunctions.html
RewriteRule ^log10.html$ mathFunctions.html
RewriteRule ^atomic_uintptr_t.html$ atomicTypes.html
RewriteRule ^log1p.html$ mathFunctions.html
RewriteRule ^work_group_commit_write_pipe.html$ pipeWorkgroupFunctions.html
RewriteRule ^mul24.html$ integerFunctions.html
RewriteRule ^erfc.html$ mathFunctions.html
RewriteRule ^get_enqueued_local_size.html$ workItemFunctions.html
RewriteRule ^get_image_channel_data_type.html$ imageQueryFunctions.html
RewriteRule ^cl_uint.html$ appScalarTypes.html
RewriteRule ^retain_event.html$ eventFunctions.html
RewriteRule ^read_pipe.html$ pipeFunctions.html
RewriteRule ^sin.html$ mathFunctions.html
RewriteRule ^cl_uchar.html$ appScalarTypes.html
RewriteRule ^cl_doublen.html$ appVectorTypes.html
RewriteRule ^isunordered.html$ relationalFunctions.html
RewriteRule ^get_pipe_max_packets.html$ pipeQueryFunctions.html
RewriteRule ^work_group_reserve_write_pipe.html$ pipeWorkgroupFunctions.html
RewriteRule ^async_work_group_copy.html$ asyncCopyFunctions.html
RewriteRule ^native_log.html$ mathFunctions.html
RewriteRule ^native_tan.html$ mathFunctions.html
RewriteRule ^FP_FAST_FMAF.html$ fpMacros.html
RewriteRule ^get_image_dim.html$ imageQueryFunctions.html
RewriteRule ^maxmag.html$ mathFunctions.html
RewriteRule ^fast_length.html$ geometricFunctions.html
RewriteRule ^isequal.html$ relationalFunctions.html
RewriteRule ^work_group_scan_exclusive.html$ workGroupFunctions.html
RewriteRule ^remainder.html$ mathFunctions.html
RewriteRule ^fast_distance.html$ geometricFunctions.html
RewriteRule ^any.html$ relationalFunctions.html
RewriteRule ^clamp_common.html$ integerFunctions.html
RewriteRule ^exp10.html$ mathFunctions.html
RewriteRule ^get_default_queue.html$ helperFunctions.html
RewriteRule ^work_group_all.html$ workGroupFunctions.html
RewriteRule ^get_kernel_preferred.html$ kernelQueryFunctions.html
RewriteRule ^atan.html$ mathFunctions.html
RewriteRule ^nosvm.html$ optionalAttributeQualifiers.html
RewriteRule ^atomic_ulong.html$ atomicTypes.html
RewriteRule ^FP_CONTRACT.html$ fpMacros.html
RewriteRule ^cl_intn.html$ appVectorTypes.html
RewriteRule ^atomic_intptr_t.html$ atomicTypes.html
RewriteRule ^bitselect.html$ relationalFunctions.html
RewriteRule ^reserve_read_pipe.html$ pipeFunctions.html
RewriteRule ^get_group_id.html$ workItemFunctions.html
RewriteRule ^wait_group_events.html$ asyncCopyFunctions.html
RewriteRule ^cl_short.html$ appScalarTypes.html
RewriteRule ^is_valid_event.html$ eventFunctions.html
RewriteRule ^mad_sat.html$ integerFunctions.html
RewriteRule ^work_group_reduce.html$ workGroupFunctions.html
RewriteRule ^get_kernel_work_group_size.html$ kernelQueryFunctions.html
RewriteRule ^integerMin.html$ integerFunctions.html
RewriteRule ^tgamma.html$ mathFunctions.html
RewriteRule ^get_num_groups.html$ workItemFunctions.html
RewriteRule ^erf.html$ mathFunctions.html
RewriteRule ^clEnqueueWriteBuffer.html$ clEnqueueReadBuffer.html
RewriteRule ^atomic_long.html$ atomicTypes.html
RewriteRule ^cosh.html$ mathFunctions.html
RewriteRule ^reserve_write_pipe.html$ pipeFunctions.html
RewriteRule ^to_local.html$ addressSpaceQualifierFuncs.html
RewriteRule ^clEnqueueWriteBufferRect.html$ clEnqueueReadBufferRect.html
RewriteRule ^read_imageui.html$ imageReadFunctions.html
RewriteRule ^step.html$ commonFunctions.html
RewriteRule ^cospi.html$ mathFunctions.html
RewriteRule ^fdim.html$ mathFunctions.html
RewriteRule ^isordered.html$ relationalFunctions.html
RewriteRule ^atomic_int.html$ atomicTypes.html
RewriteRule ^asin.html$ mathFunctions.html
RewriteRule ^NAN.html$ mathConstants.html
RewriteRule ^rootn.html$ mathFunctions.html
RewriteRule ^nan.html$ mathFunctions.html
RewriteRule ^mul_hi.html$ integerFunctions.html
RewriteRule ^native_exp2.html$ mathFunctions.html
RewriteRule ^is_valid_reserve_id.html$ pipeFunctions.html
RewriteRule ^get_image_height.html$ imageQueryFunctions.html
RewriteRule ^ctz.html$ integerFunctions.html
RewriteRule ^ndrange_3D.html$ helperFunctions.html
RewriteRule ^lgamma.html$ mathFunctions.html
RewriteRule ^cl_double.html$ appScalarTypes.html
RewriteRule ^acospi.html$ mathFunctions.html
RewriteRule ^work_group_size_hint.html$ optionalAttributeQualifiers.html
RewriteRule ^get_work_dim.html$ workItemFunctions.html
RewriteRule ^cl_ushort.html$ appScalarTypes.html
RewriteRule ^cl_shortn.html$ appVectorTypes.html
RewriteRule ^distance.html$ geometricFunctions.html
RewriteRule ^work_group_scan_inclusive.html$ workGroupFunctions.html
RewriteRule ^cl_halfn.html$ appVectorTypes.html
RewriteRule ^prefetch.html$ asyncCopyFunctions.html
RewriteRule ^hypot.html$ mathFunctions.html
RewriteRule ^half_sin.html$ mathFunctions.html
RewriteRule ^rotate.html$ integerFunctions.html
RewriteRule ^HUGE_VALF.html$ mathConstants.html
RewriteRule ^vec_type_hint.html$ optionalAttributeQualifiers.html
RewriteRule ^capture_event_profiling_info.html$ eventFunctions.html
RewriteRule ^ndrange_2D.html$ helperFunctions.html
RewriteRule ^extern.html$ storageSpecifiers.html
RewriteRule ^write_imagei.html$ imageWriteFunctions.html
RewriteRule ^half_log2.html$ mathFunctions.html
RewriteRule ^ceil.html$ mathFunctions.html
RewriteRule ^isinf.html$ relationalFunctions.html
RewriteRule ^get_global_size.html$ workItemFunctions.html
RewriteRule ^cl_floatn.html$ appVectorTypes.html
RewriteRule ^get_local_size.html$ workItemFunctions.html
RewriteRule ^clEnqueueWriteImage.html$ clEnqueueReadImage.html
RewriteRule ^get_local_id.html$ workItemFunctions.html
RewriteRule ^normalize.html$ geometricFunctions.html
RewriteRule ^sqrt.html$ mathFunctions.html
RewriteRule ^FP_FAST_FMA.html$ fpMacros.html
RewriteRule ^native_log2.html$ mathFunctions.html
RewriteRule ^isfinite.html$ relationalFunctions.html
RewriteRule ^logb.html$ mathFunctions.html
RewriteRule ^dot.html$ geometricFunctions.html
RewriteRule ^fract.html$ mathFunctions.html
RewriteRule ^get_image_array_size.html$ imageQueryFunctions.html
RewriteRule ^create_user_event.html$ eventFunctions.html
RewriteRule ^sinh.html$ mathFunctions.html
RewriteRule ^signbit.html$ relationalFunctions.html
RewriteRule ^ilogb.html$ mathFunctions.html
RewriteRule ^native_sqrt.html$ mathFunctions.html
RewriteRule ^cl_half.html$ appScalarTypes.html
RewriteRule ^integerMax.html$ integerFunctions.html
RewriteRule ^remquo.html$ mathFunctions.html
RewriteRule ^read_imagef.html$ imageReadFunctions.html
RewriteRule ^add_sat.html$ integerFunctions.html
RewriteRule ^to_global.html$ addressSpaceQualifierFuncs.html
RewriteRule ^mad.html$ mathFunctions.html
RewriteRule ^half_exp.html$ mathFunctions.html
RewriteRule ^work_group_barrier.html$ syncFunctions.html
RewriteRule ^asinpi.html$ mathFunctions.html
RewriteRule ^mad_hi.html$ integerFunctions.html
RewriteRule ^half_rsqrt.html$ mathFunctions.html
RewriteRule ^async_work_group_strided_copy.html$ asyncCopyFunctions.html
RewriteRule ^ndrange_1D.html$ helperFunctions.html
RewriteRule ^commit_write_pipe.html$ pipeFunctions.html
RewriteRule ^functionQualifiers.html$ kernel.html
RewriteRule ^half_sqrt.html$ mathFunctions.html
RewriteRule ^atomic_ptrdiff_t.html$ atomicTypes.html
RewriteRule ^atanpi.html$ mathFunctions.html
RewriteRule ^length.html$ geometricFunctions.html
RewriteRule ^trunc.html$ mathFunctions.html
RewriteRule ^modf.html$ mathFunctions.html
RewriteRule ^half_exp2.html$ mathFunctions.html
RewriteRule ^tanpi.html$ mathFunctions.html
RewriteRule ^fast_normalize.html$ geometricFunctions.html
RewriteRule ^hadd.html$ integerFunctions.html
RewriteRule ^half_exp10.html$ mathFunctions.html
RewriteRule ^native_powr.html$ mathFunctions.html
RewriteRule ^half_recip.html$ mathFunctions.html
RewriteRule ^sub_sat.html$ integerFunctions.html
RewriteRule ^isless.html$ relationalFunctions.html
RewriteRule ^cl_ushortn.html$ appVectorTypes.html
RewriteRule ^powr.html$ mathFunctions.html
RewriteRule ^half_cos.html$ mathFunctions.html
RewriteRule ^atanh.html$ mathFunctions.html
RewriteRule ^lgamma_r.html$ mathFunctions.html
RewriteRule ^cross.html$ geometricFunctions.html
RewriteRule ^vec_step.html$ miscVectorFunctions.html
RewriteRule ^fmax.html$ mathFunctions.html
RewriteRule ^sinpi.html$ mathFunctions.html
RewriteRule ^abs.html$ integerFunctions.html
RewriteRule ^write_imagef.html$ imageWriteFunctions.html
RewriteRule ^sign.html$ commonFunctions.html
RewriteRule ^tanh.html$ mathFunctions.html
RewriteRule ^atomic_size_t.html$ atomicTypes.html
RewriteRule ^isnotequal.html$ relationalFunctions.html
RewriteRule ^isnormal.html$ relationalFunctions.html
RewriteRule ^macroLimits.html$ fpMacros.html
RewriteRule ^work_group_commit_read_pipe.html$ pipeWorkgroupFunctions.html
RewriteRule ^half_tan.html$ mathFunctions.html
RewriteRule ^isgreaterequal.html$ relationalFunctions.html
RewriteRule ^min.html$ commonFunctions.html
RewriteRule ^all.html$ relationalFunctions.html
RewriteRule ^cl_ucharn.html$ appVectorTypes.html
RewriteRule ^typedef.html$ storageSpecifiers.html
RewriteRule ^fma.html$ mathFunctions.html
RewriteRule ^HUGE_VAL.html$ mathConstants.html
RewriteRule ^radians.html$ commonFunctions.html
RewriteRule ^expm1.html$ mathFunctions.html
RewriteRule ^get_global_id.html$ workItemFunctions.html
RewriteRule ^cl_int.html$ appScalarTypes.html
RewriteRule ^clamp_integer.html$ commonFunctions.html
RewriteRule ^work_group_broadcast.html$ workGroupFunctions.html
RewriteRule ^get_image_width.html$ imageQueryFunctions.html
RewriteRule ^get_image_channel_order.html$ imageQueryFunctions.html
RewriteRule ^copysign.html$ mathFunctions.html
RewriteRule ^mad24.html$ integerFunctions.html
RewriteRule ^islessequal.html$ relationalFunctions.html
RewriteRule ^mix.html$ commonFunctions.html
RewriteRule ^isnan.html$ relationalFunctions.html
RewriteRule ^barrier.html$ syncFunctions.html
RewriteRule ^native_sin.html$ mathFunctions.html
RewriteRule ^work_group_reserve_read_pipe.html$ pipeWorkgroupFunctions.html
RewriteRule ^native_rsqrt.html$ mathFunctions.html
RewriteRule ^cl_ulongn.html$ appVectorTypes.html
RewriteRule ^cl_uintn.html$ appVectorTypes.html
RewriteRule ^cl_long.html$ appScalarTypes.html
RewriteRule ^tan.html$ mathFunctions.html
RewriteRule ^sampler_t.html$ samplers.html
RewriteRule ^cl_ulong.html$ appScalarTypes.html
RewriteRule ^get_pipe_num_packets.html$ pipeQueryFunctions.html
RewriteRule ^upsample.html$ integerFunctions.html
RewriteRule ^native_divide.html$ mathFunctions.html
RewriteRule ^fmin.html$ mathFunctions.html
RewriteRule ^atomic_uint.html$ atomicTypes.html
