\( % Arcus cosine. \def\acos{\cos^{-1}} % Vector projection. \def\projection#1#2{{proj_{#1}\left(#2\right)}} % Vector rejection. \def\rejection#1#2{{rej_{#1}\left(#2\right)}} % Norm. \def\norm#1{{\left\|#1\right\|}} % Cross product. \def\cross#1#2{\mathit{cross}\left(#1,#2\right)} % Dot product. \def\dot#1#2{{#1 \cdot #2}} % Magnitude. \def\mag#1{{\left|#1\right}} \def\group#1{\left(#1\right)}} \def\sbgrp#1{\left\{#1\right\}} \)

Ring1_Intrinsic_maximum

Get the maximum of two values.

Ring1_Result
Ring1_Intrinsic_clamp_suffix
  (
    type *result,
    type x,
    type y
  )

The following table denotes the valid combinations of suffix and type

suffix type
f32 float
f64 double
u8 uint8_t
u16 uint16_t
u32 uint32_t
u64 uint64_t
s8 int8_t
s16 int16_t
s32 int32_t
s64 int64_t
sz size_t

This function gets the maximum of two values.

Parameter Values

result
A pointer to a type variable.
x
The first value.
y
The second value.

Return Values

Ring1_Result_Success on success, Ring1_Result_Failure on failure.

Post Conditions

If this function fails, then it sets the by-thread status variable.

Below is a list of failure conditions and the status codes indicating them.

Ring1_Status_InvalidArgument
result was NULL.
Ring1_Status_InvalidArgument
x was Ring1_Intrinsic_Fp_NoNumber_suffix.
Ring1_Status_InvalidArgument
y was Ring1_Intrinsic_Fp_NoNumber_suffix.

If this function succeeds, then *result was assigned the maximum of x and y.