// RUN: %run_test hipify "%s" "%t" %hipify_args 3 --amap --skip-excluded-preprocessor-conditional-blocks --experimental %clang_args -ferror-limit=500

// CHECK: #include <hip/hip_runtime.h>
#include <cuda_runtime.h>
#include <stdio.h>
// CHECK: #include "hip/hip_fp8.h"
#include "cuda_fp8.h"
// CHECK-NOT: #include "hip/hip_fp8.h"
// CHECK-NOT: #include "cuda_fp8.h"

int main() {
  printf("24. CUDA Device API to HIP Device API synthetic test\n");

  double da = 0.0f;
  double dx = 0.0f;
  float fa = 0.0f;
  float fx = 0.0f;
  short int shi = 0;
  unsigned short int ushi = 0;
  double2 d2 = { 0.0f, 0.0f };
  float2 f2 = { 0.0f, 0.0f };
  __half hx = { 0.0f };
  __half hy = { 0.0f };
  __half2 h2 = { 0.0f, 0.0f };
  __half_raw hrx = { 0 };
  __half2_raw h2rx = { 0, 0 };

  // CHECK: hipRoundMode RoundMode;
  cudaRoundMode RoundMode;

  char c_1 = 0;
  unsigned char uc_1 = 0;
  short s_1 = 0;
  unsigned short us_1 = 0;
  int i_1 = 0;
  unsigned int ui_1 = 0;
  float f_1 = 0.f;
  long l_1 = 0;
  unsigned long ul_1 = 0;
  double d_1 = 0.0f;
  long long ll_1 = 0;
  unsigned long long ull_1 = 0;

  short1 sh_1 = { 0 };
  ushort1 ush_1 = { 0 };

  // CHECK: char1 ch_1_c = make_char1(c_1);
  // CHECK-NEXT: char1 ch_1_uc = make_char1(uc_1);
  // CHECK-NEXT: char1 ch_1_s = make_char1(s_1);
  // CHECK-NEXT: char1 ch_1_us = make_char1(us_1);
  // CHECK-NEXT: char1 ch_1_i = make_char1(i_1);
  // CHECK-NEXT: char1 ch_1_ui = make_char1(ui_1);
  // CHECK-NEXT: char1 ch_1_f = make_char1(f_1);
  // CHECK-NEXT: char1 ch_1_l = make_char1(l_1);
  // CHECK-NEXT: char1 ch_1_ul = make_char1(ul_1);
  // CHECK-NEXT: char1 ch_1_d = make_char1(d_1);
  // CHECK-NEXT: char1 ch_1_ll = make_char1(ll_1);
  // CHECK-NEXT: char1 ch_1_ull = make_char1(ull_1);
  char1 ch_1_c = make_char1(c_1);
  char1 ch_1_uc = make_char1(uc_1);
  char1 ch_1_s = make_char1(s_1);
  char1 ch_1_us = make_char1(us_1);
  char1 ch_1_i = make_char1(i_1);
  char1 ch_1_ui = make_char1(ui_1);
  char1 ch_1_f = make_char1(f_1);
  char1 ch_1_l = make_char1(l_1);
  char1 ch_1_ul = make_char1(ul_1);
  char1 ch_1_d = make_char1(d_1);
  char1 ch_1_ll = make_char1(ll_1);
  char1 ch_1_ull = make_char1(ull_1);

  char c_2 = 0;
  unsigned char uc_2 = 0;
  short s_2 = 0;
  unsigned short us_2 = 0;
  int i_2 = 0;
  unsigned int ui_2 = 0;
  float f_2 = 0.f;
  long l_2 = 0;
  unsigned long ul_2 = 0;
  double d_2 = 0.0f;
  long long ll_2 = 0;
  unsigned long long ull_2 = 0;

  short1 sh_2 = { 0 };
  ushort1 ush_2 = { 0 };

  // CHECK: char2 ch_2_c = make_char2(c_1, c_2);
  // CHECK-NEXT: char2 ch_2_uc = make_char2(uc_1, uc_2);
  // CHECK-NEXT: char2 ch_2_s = make_char2(s_1, s_2);
  // CHECK-NEXT: char2 ch_2_us = make_char2(us_1, us_2);
  // CHECK-NEXT: char2 ch_2_i = make_char2(i_1, i_2);
  // CHECK-NEXT: char2 ch_2_ui = make_char2(ui_1, ui_2);
  // CHECK-NEXT: char2 ch_2_f = make_char2(f_1, f_2);
  // CHECK-NEXT: char2 ch_2_l = make_char2(l_1, l_2);
  // CHECK-NEXT: char2 ch_2_ul = make_char2(ul_1, ul_2);
  // CHECK-NEXT: char2 ch_2_d = make_char2(d_1, d_2);
  // CHECK-NEXT: char2 ch_2_ll = make_char2(ll_1, ll_2);
  // CHECK-NEXT: char2 ch_2_ull = make_char2(ull_1, ull_2);
  char2 ch_2_c = make_char2(c_1, c_2);
  char2 ch_2_uc = make_char2(uc_1, uc_2);
  char2 ch_2_s = make_char2(s_1, s_2);
  char2 ch_2_us = make_char2(us_1, us_2);
  char2 ch_2_i = make_char2(i_1, i_2);
  char2 ch_2_ui = make_char2(ui_1, ui_2);
  char2 ch_2_f = make_char2(f_1, f_2);
  char2 ch_2_l = make_char2(l_1, l_2);
  char2 ch_2_ul = make_char2(ul_1, ul_2);
  char2 ch_2_d = make_char2(d_1, d_2);
  char2 ch_2_ll = make_char2(ll_1, ll_2);
  char2 ch_2_ull = make_char2(ull_1, ull_2);

  char c_3 = 0;
  unsigned char uc_3 = 0;
  short s_3 = 0;
  unsigned short us_3 = 0;
  int i_3 = 0;
  unsigned int ui_3 = 0;
  float f_3 = 0.f;
  long l_3 = 0;
  unsigned long ul_3 = 0;
  double d_3 = 0.0f;
  long long ll_3 = 0;
  unsigned long long ull_3 = 0;

  short1 sh_3 = { 0 };
  ushort1 ush_3 = { 0 };

  // CHECK: char3 ch_3_c = make_char3(c_1, c_2, c_3);
  // CHECK-NEXT: char3 ch_3_uc = make_char3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: char3 ch_3_s = make_char3(s_1, s_2, s_3);
  // CHECK-NEXT: char3 ch_3_us = make_char3(us_1, us_2, us_3);
  // CHECK-NEXT: char3 ch_3_i = make_char3(i_1, i_2, i_3);
  // CHECK-NEXT: char3 ch_3_ui = make_char3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: char3 ch_3_f = make_char3(f_1, f_2, f_3);
  // CHECK-NEXT: char3 ch_3_l = make_char3(l_1, l_2, l_3);
  // CHECK-NEXT: char3 ch_3_ul = make_char3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: char3 ch_3_d = make_char3(d_1, d_2, d_3);
  // CHECK-NEXT: char3 ch_3_ll = make_char3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: char3 ch_3_ull = make_char3(ull_1, ull_2, ull_3);
  char3 ch_3_c = make_char3(c_1, c_2, c_3);
  char3 ch_3_uc = make_char3(uc_1, uc_2, uc_3);
  char3 ch_3_s = make_char3(s_1, s_2, s_3);
  char3 ch_3_us = make_char3(us_1, us_2, us_3);
  char3 ch_3_i = make_char3(i_1, i_2, i_3);
  char3 ch_3_ui = make_char3(ui_1, ui_2, ui_3);
  char3 ch_3_f = make_char3(f_1, f_2, f_3);
  char3 ch_3_l = make_char3(l_1, l_2, l_3);
  char3 ch_3_ul = make_char3(ul_1, ul_2, ul_3);
  char3 ch_3_d = make_char3(d_1, d_2, d_3);
  char3 ch_3_ll = make_char3(ll_1, ll_2, ll_3);
  char3 ch_3_ull = make_char3(ull_1, ull_2, ull_3);

  char c_4 = 0;
  unsigned char uc_4 = 0;
  short s_4 = 0;
  unsigned short us_4 = 0;
  int i_4 = 0;
  unsigned int ui_4 = 0;
  float f_4 = 0.f;
  long l_4 = 0;
  unsigned long ul_4 = 0;
  double d_4 = 0.0f;
  long long ll_4 = 0;
  unsigned long long ull_4 = 0;

  short1 sh_4 = { 0 };
  ushort1 ush_4 = { 0 };

  // CHECK: char4 ch_4_c = make_char4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: char4 ch_4_uc = make_char4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: char4 ch_4_s = make_char4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: char4 ch_4_us = make_char4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: char4 ch_4_i = make_char4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: char4 ch_4_ui = make_char4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: char4 ch_4_f = make_char4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: char4 ch_4_l = make_char4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: char4 ch_4_ul = make_char4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: char4 ch_4_d = make_char4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: char4 ch_4_ll = make_char4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: char4 ch_4_ull = make_char4(ull_1, ull_2, ull_3, ull_4);
  char4 ch_4_c = make_char4(c_1, c_2, c_3, c_4);
  char4 ch_4_uc = make_char4(uc_1, uc_2, uc_3, uc_4);
  char4 ch_4_s = make_char4(s_1, s_2, s_3, s_4);
  char4 ch_4_us = make_char4(us_1, us_2, us_3, us_4);
  char4 ch_4_i = make_char4(i_1, i_2, i_3, i_4);
  char4 ch_4_ui = make_char4(ui_1, ui_2, ui_3, ui_4);
  char4 ch_4_f = make_char4(f_1, f_2, f_3, f_4);
  char4 ch_4_l = make_char4(l_1, l_2, l_3, l_4);
  char4 ch_4_ul = make_char4(ul_1, ul_2, ul_3, ul_4);
  char4 ch_4_d = make_char4(d_1, d_2, d_3, d_4);
  char4 ch_4_ll = make_char4(ll_1, ll_2, ll_3, ll_4);
  char4 ch_4_ull = make_char4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: uchar1 uch_1_c = make_uchar1(c_1);
  // CHECK-NEXT: uchar1 uch_1_uc = make_uchar1(uc_1);
  // CHECK-NEXT: uchar1 uch_1_s = make_uchar1(s_1);
  // CHECK-NEXT: uchar1 uch_1_us = make_uchar1(us_1);
  // CHECK-NEXT: uchar1 uch_1_i = make_uchar1(i_1);
  // CHECK-NEXT: uchar1 uch_1_ui = make_uchar1(ui_1);
  // CHECK-NEXT: uchar1 uch_1_f = make_uchar1(f_1);
  // CHECK-NEXT: uchar1 uch_1_l = make_uchar1(l_1);
  // CHECK-NEXT: uchar1 uch_1_ul = make_uchar1(ul_1);
  // CHECK-NEXT: uchar1 uch_1_d = make_uchar1(d_1);
  // CHECK-NEXT: uchar1 uch_1_ll = make_uchar1(ll_1);
  // CHECK-NEXT: uchar1 uch_1_ull = make_uchar1(ull_1);
  uchar1 uch_1_c = make_uchar1(c_1);
  uchar1 uch_1_uc = make_uchar1(uc_1);
  uchar1 uch_1_s = make_uchar1(s_1);
  uchar1 uch_1_us = make_uchar1(us_1);
  uchar1 uch_1_i = make_uchar1(i_1);
  uchar1 uch_1_ui = make_uchar1(ui_1);
  uchar1 uch_1_f = make_uchar1(f_1);
  uchar1 uch_1_l = make_uchar1(l_1);
  uchar1 uch_1_ul = make_uchar1(ul_1);
  uchar1 uch_1_d = make_uchar1(d_1);
  uchar1 uch_1_ll = make_uchar1(ll_1);
  uchar1 uch_1_ull = make_uchar1(ull_1);

  // CHECK: uchar2 uch_2_c = make_uchar2(c_1, c_2);
  // CHECK-NEXT: uchar2 uch_2_uc = make_uchar2(uc_1, uc_2);
  // CHECK-NEXT: uchar2 uch_2_s = make_uchar2(s_1, s_2);
  // CHECK-NEXT: uchar2 uch_2_us = make_uchar2(us_1, us_2);
  // CHECK-NEXT: uchar2 uch_2_i = make_uchar2(i_1, i_2);
  // CHECK-NEXT: uchar2 uch_2_ui = make_uchar2(ui_1, ui_2);
  // CHECK-NEXT: uchar2 uch_2_f = make_uchar2(f_1, f_2);
  // CHECK-NEXT: uchar2 uch_2_l = make_uchar2(l_1, l_2);
  // CHECK-NEXT: uchar2 uch_2_ul = make_uchar2(ul_1, ul_2);
  // CHECK-NEXT: uchar2 uch_2_d = make_uchar2(d_1, d_2);
  // CHECK-NEXT: uchar2 uch_2_ll = make_uchar2(ll_1, ll_2);
  // CHECK-NEXT: uchar2 uch_2_ull = make_uchar2(ull_1, ull_2);
  uchar2 uch_2_c = make_uchar2(c_1, c_2);
  uchar2 uch_2_uc = make_uchar2(uc_1, uc_2);
  uchar2 uch_2_s = make_uchar2(s_1, s_2);
  uchar2 uch_2_us = make_uchar2(us_1, us_2);
  uchar2 uch_2_i = make_uchar2(i_1, i_2);
  uchar2 uch_2_ui = make_uchar2(ui_1, ui_2);
  uchar2 uch_2_f = make_uchar2(f_1, f_2);
  uchar2 uch_2_l = make_uchar2(l_1, l_2);
  uchar2 uch_2_ul = make_uchar2(ul_1, ul_2);
  uchar2 uch_2_d = make_uchar2(d_1, d_2);
  uchar2 uch_2_ll = make_uchar2(ll_1, ll_2);
  uchar2 uch_2_ull = make_uchar2(ull_1, ull_2);

  // CHECK: uchar3 uch_3_c = make_uchar3(c_1, c_2, c_3);
  // CHECK-NEXT: uchar3 uch_3_uc = make_uchar3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: uchar3 uch_3_s = make_uchar3(s_1, s_2, s_3);
  // CHECK-NEXT: uchar3 uch_3_us = make_uchar3(us_1, us_2, us_3);
  // CHECK-NEXT: uchar3 uch_3_i = make_uchar3(i_1, i_2, i_3);
  // CHECK-NEXT: uchar3 uch_3_ui = make_uchar3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: uchar3 uch_3_f = make_uchar3(f_1, f_2, f_3);
  // CHECK-NEXT: uchar3 uch_3_l = make_uchar3(l_1, l_2, l_3);
  // CHECK-NEXT: uchar3 uch_3_ul = make_uchar3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: uchar3 uch_3_d = make_uchar3(d_1, d_2, d_3);
  // CHECK-NEXT: uchar3 uch_3_ll = make_uchar3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: uchar3 uch_3_ull = make_uchar3(ull_1, ull_2, ull_3);
  uchar3 uch_3_c = make_uchar3(c_1, c_2, c_3);
  uchar3 uch_3_uc = make_uchar3(uc_1, uc_2, uc_3);
  uchar3 uch_3_s = make_uchar3(s_1, s_2, s_3);
  uchar3 uch_3_us = make_uchar3(us_1, us_2, us_3);
  uchar3 uch_3_i = make_uchar3(i_1, i_2, i_3);
  uchar3 uch_3_ui = make_uchar3(ui_1, ui_2, ui_3);
  uchar3 uch_3_f = make_uchar3(f_1, f_2, f_3);
  uchar3 uch_3_l = make_uchar3(l_1, l_2, l_3);
  uchar3 uch_3_ul = make_uchar3(ul_1, ul_2, ul_3);
  uchar3 uch_3_d = make_uchar3(d_1, d_2, d_3);
  uchar3 uch_3_ll = make_uchar3(ll_1, ll_2, ll_3);
  uchar3 uch_3_ull = make_uchar3(ull_1, ull_2, ull_3);

  // CHECK: uchar4 uch_4_c = make_uchar4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: uchar4 uch_4_uc = make_uchar4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: uchar4 uch_4_s = make_uchar4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: uchar4 uch_4_us = make_uchar4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: uchar4 uch_4_i = make_uchar4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: uchar4 uch_4_ui = make_uchar4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: uchar4 uch_4_f = make_uchar4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: uchar4 uch_4_l = make_uchar4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: uchar4 uch_4_ul = make_uchar4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: uchar4 uch_4_d = make_uchar4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: uchar4 uch_4_ll = make_uchar4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: uchar4 uch_4_ull = make_uchar4(ull_1, ull_2, ull_3, ull_4);
  uchar4 uch_4_c = make_uchar4(c_1, c_2, c_3, c_4);
  uchar4 uch_4_uc = make_uchar4(uc_1, uc_2, uc_3, uc_4);
  uchar4 uch_4_s = make_uchar4(s_1, s_2, s_3, s_4);
  uchar4 uch_4_us = make_uchar4(us_1, us_2, us_3, us_4);
  uchar4 uch_4_i = make_uchar4(i_1, i_2, i_3, i_4);
  uchar4 uch_4_ui = make_uchar4(ui_1, ui_2, ui_3, ui_4);
  uchar4 uch_4_f = make_uchar4(f_1, f_2, f_3, f_4);
  uchar4 uch_4_l = make_uchar4(l_1, l_2, l_3, l_4);
  uchar4 uch_4_ul = make_uchar4(ul_1, ul_2, ul_3, ul_4);
  uchar4 uch_4_d = make_uchar4(d_1, d_2, d_3, d_4);
  uchar4 uch_4_ll = make_uchar4(ll_1, ll_2, ll_3, ll_4);
  uchar4 uch_4_ull = make_uchar4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: short1 sh_1_c = make_short1(c_1);
  // CHECK-NEXT: short1 sh_1_uc = make_short1(uc_1);
  // CHECK-NEXT: short1 sh_1_s = make_short1(s_1);
  // CHECK-NEXT: short1 sh_1_us = make_short1(us_1);
  // CHECK-NEXT: short1 sh_1_i = make_short1(i_1);
  // CHECK-NEXT: short1 sh_1_ui = make_short1(ui_1);
  // CHECK-NEXT: short1 sh_1_f = make_short1(f_1);
  // CHECK-NEXT: short1 sh_1_l = make_short1(l_1);
  // CHECK-NEXT: short1 sh_1_ul = make_short1(ul_1);
  // CHECK-NEXT: short1 sh_1_d = make_short1(d_1);
  // CHECK-NEXT: short1 sh_1_ll = make_short1(ll_1);
  // CHECK-NEXT: short1 sh_1_ull = make_short1(ull_1);
  short1 sh_1_c = make_short1(c_1);
  short1 sh_1_uc = make_short1(uc_1);
  short1 sh_1_s = make_short1(s_1);
  short1 sh_1_us = make_short1(us_1);
  short1 sh_1_i = make_short1(i_1);
  short1 sh_1_ui = make_short1(ui_1);
  short1 sh_1_f = make_short1(f_1);
  short1 sh_1_l = make_short1(l_1);
  short1 sh_1_ul = make_short1(ul_1);
  short1 sh_1_d = make_short1(d_1);
  short1 sh_1_ll = make_short1(ll_1);
  short1 sh_1_ull = make_short1(ull_1);

  // CHECK: short2 sh_2_c = make_short2(c_1, c_2);
  // CHECK-NEXT: short2 sh_2_uc = make_short2(uc_1, uc_2);
  // CHECK-NEXT: short2 sh_2_s = make_short2(s_1, s_2);
  // CHECK-NEXT: short2 sh_2_us = make_short2(us_1, us_2);
  // CHECK-NEXT: short2 sh_2_i = make_short2(i_1, i_2);
  // CHECK-NEXT: short2 sh_2_ui = make_short2(ui_1, ui_2);
  // CHECK-NEXT: short2 sh_2_f = make_short2(f_1, f_2);
  // CHECK-NEXT: short2 sh_2_l = make_short2(l_1, l_2);
  // CHECK-NEXT: short2 sh_2_ul = make_short2(ul_1, ul_2);
  // CHECK-NEXT: short2 sh_2_d = make_short2(d_1, d_2);
  // CHECK-NEXT: short2 sh_2_ll = make_short2(ll_1, ll_2);
  // CHECK-NEXT: short2 sh_2_ull = make_short2(ull_1, ull_2);
  short2 sh_2_c = make_short2(c_1, c_2);
  short2 sh_2_uc = make_short2(uc_1, uc_2);
  short2 sh_2_s = make_short2(s_1, s_2);
  short2 sh_2_us = make_short2(us_1, us_2);
  short2 sh_2_i = make_short2(i_1, i_2);
  short2 sh_2_ui = make_short2(ui_1, ui_2);
  short2 sh_2_f = make_short2(f_1, f_2);
  short2 sh_2_l = make_short2(l_1, l_2);
  short2 sh_2_ul = make_short2(ul_1, ul_2);
  short2 sh_2_d = make_short2(d_1, d_2);
  short2 sh_2_ll = make_short2(ll_1, ll_2);
  short2 sh_2_ull = make_short2(ull_1, ull_2);

  // CHECK: short3 sh_3_c = make_short3(c_1, c_2, c_3);
  // CHECK-NEXT: short3 sh_3_uc = make_short3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: short3 sh_3_s = make_short3(s_1, s_2, s_3);
  // CHECK-NEXT: short3 sh_3_us = make_short3(us_1, us_2, us_3);
  // CHECK-NEXT: short3 sh_3_i = make_short3(i_1, i_2, i_3);
  // CHECK-NEXT: short3 sh_3_ui = make_short3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: short3 sh_3_f = make_short3(f_1, f_2, f_3);
  // CHECK-NEXT: short3 sh_3_l = make_short3(l_1, l_2, l_3);
  // CHECK-NEXT: short3 sh_3_ul = make_short3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: short3 sh_3_d = make_short3(d_1, d_2, d_3);
  // CHECK-NEXT: short3 sh_3_ll = make_short3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: short3 sh_3_ull = make_short3(ull_1, ull_2, ull_3);
  short3 sh_3_c = make_short3(c_1, c_2, c_3);
  short3 sh_3_uc = make_short3(uc_1, uc_2, uc_3);
  short3 sh_3_s = make_short3(s_1, s_2, s_3);
  short3 sh_3_us = make_short3(us_1, us_2, us_3);
  short3 sh_3_i = make_short3(i_1, i_2, i_3);
  short3 sh_3_ui = make_short3(ui_1, ui_2, ui_3);
  short3 sh_3_f = make_short3(f_1, f_2, f_3);
  short3 sh_3_l = make_short3(l_1, l_2, l_3);
  short3 sh_3_ul = make_short3(ul_1, ul_2, ul_3);
  short3 sh_3_d = make_short3(d_1, d_2, d_3);
  short3 sh_3_ll = make_short3(ll_1, ll_2, ll_3);
  short3 sh_3_ull = make_short3(ull_1, ull_2, ull_3);

  // CHECK: short4 sh_4_c = make_short4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: short4 sh_4_uc = make_short4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: short4 sh_4_s = make_short4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: short4 sh_4_us = make_short4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: short4 sh_4_i = make_short4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: short4 sh_4_ui = make_short4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: short4 sh_4_f = make_short4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: short4 sh_4_l = make_short4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: short4 sh_4_ul = make_short4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: short4 sh_4_d = make_short4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: short4 sh_4_ll = make_short4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: short4 sh_4_ull = make_short4(ull_1, ull_2, ull_3, ull_4);
  short4 sh_4_c = make_short4(c_1, c_2, c_3, c_4);
  short4 sh_4_uc = make_short4(uc_1, uc_2, uc_3, uc_4);
  short4 sh_4_s = make_short4(s_1, s_2, s_3, s_4);
  short4 sh_4_us = make_short4(us_1, us_2, us_3, us_4);
  short4 sh_4_i = make_short4(i_1, i_2, i_3, i_4);
  short4 sh_4_ui = make_short4(ui_1, ui_2, ui_3, ui_4);
  short4 sh_4_f = make_short4(f_1, f_2, f_3, f_4);
  short4 sh_4_l = make_short4(l_1, l_2, l_3, l_4);
  short4 sh_4_ul = make_short4(ul_1, ul_2, ul_3, ul_4);
  short4 sh_4_d = make_short4(d_1, d_2, d_3, d_4);
  short4 sh_4_ll = make_short4(ll_1, ll_2, ll_3, ll_4);
  short4 sh_4_ull = make_short4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: ushort1 ush_1_c = make_ushort1(c_1);
  // CHECK-NEXT: ushort1 ush_1_uc = make_ushort1(uc_1);
  // CHECK-NEXT: ushort1 ush_1_s = make_ushort1(s_1);
  // CHECK-NEXT: ushort1 ush_1_us = make_ushort1(us_1);
  // CHECK-NEXT: ushort1 ush_1_i = make_ushort1(i_1);
  // CHECK-NEXT: ushort1 ush_1_ui = make_ushort1(ui_1);
  // CHECK-NEXT: ushort1 ush_1_f = make_ushort1(f_1);
  // CHECK-NEXT: ushort1 ush_1_l = make_ushort1(l_1);
  // CHECK-NEXT: ushort1 ush_1_ul = make_ushort1(ul_1);
  // CHECK-NEXT: ushort1 ush_1_d = make_ushort1(d_1);
  // CHECK-NEXT: ushort1 ush_1_ll = make_ushort1(ll_1);
  // CHECK-NEXT: ushort1 ush_1_ull = make_ushort1(ull_1);
  ushort1 ush_1_c = make_ushort1(c_1);
  ushort1 ush_1_uc = make_ushort1(uc_1);
  ushort1 ush_1_s = make_ushort1(s_1);
  ushort1 ush_1_us = make_ushort1(us_1);
  ushort1 ush_1_i = make_ushort1(i_1);
  ushort1 ush_1_ui = make_ushort1(ui_1);
  ushort1 ush_1_f = make_ushort1(f_1);
  ushort1 ush_1_l = make_ushort1(l_1);
  ushort1 ush_1_ul = make_ushort1(ul_1);
  ushort1 ush_1_d = make_ushort1(d_1);
  ushort1 ush_1_ll = make_ushort1(ll_1);
  ushort1 ush_1_ull = make_ushort1(ull_1);

  // CHECK: ushort2 ush_2_c = make_ushort2(c_1, c_2);
  // CHECK-NEXT: ushort2 ush_2_uc = make_ushort2(uc_1, uc_2);
  // CHECK-NEXT: ushort2 ush_2_s = make_ushort2(s_1, s_2);
  // CHECK-NEXT: ushort2 ush_2_us = make_ushort2(us_1, us_2);
  // CHECK-NEXT: ushort2 ush_2_i = make_ushort2(i_1, i_2);
  // CHECK-NEXT: ushort2 ush_2_ui = make_ushort2(ui_1, ui_2);
  // CHECK-NEXT: ushort2 ush_2_f = make_ushort2(f_1, f_2);
  // CHECK-NEXT: ushort2 ush_2_l = make_ushort2(l_1, l_2);
  // CHECK-NEXT: ushort2 ush_2_ul = make_ushort2(ul_1, ul_2);
  // CHECK-NEXT: ushort2 ush_2_d = make_ushort2(d_1, d_2);
  // CHECK-NEXT: ushort2 ush_2_ll = make_ushort2(ll_1, ll_2);
  // CHECK-NEXT: ushort2 ush_2_ull = make_ushort2(ull_1, ull_2);
  ushort2 ush_2_c = make_ushort2(c_1, c_2);
  ushort2 ush_2_uc = make_ushort2(uc_1, uc_2);
  ushort2 ush_2_s = make_ushort2(s_1, s_2);
  ushort2 ush_2_us = make_ushort2(us_1, us_2);
  ushort2 ush_2_i = make_ushort2(i_1, i_2);
  ushort2 ush_2_ui = make_ushort2(ui_1, ui_2);
  ushort2 ush_2_f = make_ushort2(f_1, f_2);
  ushort2 ush_2_l = make_ushort2(l_1, l_2);
  ushort2 ush_2_ul = make_ushort2(ul_1, ul_2);
  ushort2 ush_2_d = make_ushort2(d_1, d_2);
  ushort2 ush_2_ll = make_ushort2(ll_1, ll_2);
  ushort2 ush_2_ull = make_ushort2(ull_1, ull_2);

  // CHECK: ushort3 ush_3_c = make_ushort3(c_1, c_2, c_3);
  // CHECK-NEXT: ushort3 ush_3_uc = make_ushort3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: ushort3 ush_3_s = make_ushort3(s_1, s_2, s_3);
  // CHECK-NEXT: ushort3 ush_3_us = make_ushort3(us_1, us_2, us_3);
  // CHECK-NEXT: ushort3 ush_3_i = make_ushort3(i_1, i_2, i_3);
  // CHECK-NEXT: ushort3 ush_3_ui = make_ushort3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: ushort3 ush_3_f = make_ushort3(f_1, f_2, f_3);
  // CHECK-NEXT: ushort3 ush_3_l = make_ushort3(l_1, l_2, l_3);
  // CHECK-NEXT: ushort3 ush_3_ul = make_ushort3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: ushort3 ush_3_d = make_ushort3(d_1, d_2, d_3);
  // CHECK-NEXT: ushort3 ush_3_ll = make_ushort3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: ushort3 ush_3_ull = make_ushort3(ull_1, ull_2, ull_3);
  ushort3 ush_3_c = make_ushort3(c_1, c_2, c_3);
  ushort3 ush_3_uc = make_ushort3(uc_1, uc_2, uc_3);
  ushort3 ush_3_s = make_ushort3(s_1, s_2, s_3);
  ushort3 ush_3_us = make_ushort3(us_1, us_2, us_3);
  ushort3 ush_3_i = make_ushort3(i_1, i_2, i_3);
  ushort3 ush_3_ui = make_ushort3(ui_1, ui_2, ui_3);
  ushort3 ush_3_f = make_ushort3(f_1, f_2, f_3);
  ushort3 ush_3_l = make_ushort3(l_1, l_2, l_3);
  ushort3 ush_3_ul = make_ushort3(ul_1, ul_2, ul_3);
  ushort3 ush_3_d = make_ushort3(d_1, d_2, d_3);
  ushort3 ush_3_ll = make_ushort3(ll_1, ll_2, ll_3);
  ushort3 ush_3_ull = make_ushort3(ull_1, ull_2, ull_3);

  // CHECK: ushort4 ush_4_c = make_ushort4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: ushort4 ush_4_uc = make_ushort4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: ushort4 ush_4_s = make_ushort4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: ushort4 ush_4_us = make_ushort4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: ushort4 ush_4_i = make_ushort4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: ushort4 ush_4_ui = make_ushort4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: ushort4 ush_4_f = make_ushort4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: ushort4 ush_4_l = make_ushort4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: ushort4 ush_4_ul = make_ushort4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: ushort4 ush_4_d = make_ushort4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: ushort4 ush_4_ll = make_ushort4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: ushort4 ush_4_ull = make_ushort4(ull_1, ull_2, ull_3, ull_4);
  ushort4 ush_4_c = make_ushort4(c_1, c_2, c_3, c_4);
  ushort4 ush_4_uc = make_ushort4(uc_1, uc_2, uc_3, uc_4);
  ushort4 ush_4_s = make_ushort4(s_1, s_2, s_3, s_4);
  ushort4 ush_4_us = make_ushort4(us_1, us_2, us_3, us_4);
  ushort4 ush_4_i = make_ushort4(i_1, i_2, i_3, i_4);
  ushort4 ush_4_ui = make_ushort4(ui_1, ui_2, ui_3, ui_4);
  ushort4 ush_4_f = make_ushort4(f_1, f_2, f_3, f_4);
  ushort4 ush_4_l = make_ushort4(l_1, l_2, l_3, l_4);
  ushort4 ush_4_ul = make_ushort4(ul_1, ul_2, ul_3, ul_4);
  ushort4 ush_4_d = make_ushort4(d_1, d_2, d_3, d_4);
  ushort4 ush_4_ll = make_ushort4(ll_1, ll_2, ll_3, ll_4);
  ushort4 ush_4_ull = make_ushort4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: int1 int_1_c = make_int1(c_1);
  // CHECK-NEXT: int1 int_1_uc = make_int1(uc_1);
  // CHECK-NEXT: int1 int_1_s = make_int1(s_1);
  // CHECK-NEXT: int1 int_1_us = make_int1(us_1);
  // CHECK-NEXT: int1 int_1_i = make_int1(i_1);
  // CHECK-NEXT: int1 int_1_ui = make_int1(ui_1);
  // CHECK-NEXT: int1 int_1_f = make_int1(f_1);
  // CHECK-NEXT: int1 int_1_l = make_int1(l_1);
  // CHECK-NEXT: int1 int_1_ul = make_int1(ul_1);
  // CHECK-NEXT: int1 int_1_d = make_int1(d_1);
  // CHECK-NEXT: int1 int_1_ll = make_int1(ll_1);
  // CHECK-NEXT: int1 int_1_ull = make_int1(ull_1);
  int1 int_1_c = make_int1(c_1);
  int1 int_1_uc = make_int1(uc_1);
  int1 int_1_s = make_int1(s_1);
  int1 int_1_us = make_int1(us_1);
  int1 int_1_i = make_int1(i_1);
  int1 int_1_ui = make_int1(ui_1);
  int1 int_1_f = make_int1(f_1);
  int1 int_1_l = make_int1(l_1);
  int1 int_1_ul = make_int1(ul_1);
  int1 int_1_d = make_int1(d_1);
  int1 int_1_ll = make_int1(ll_1);
  int1 int_1_ull = make_int1(ull_1);

  // CHECK: int2 int_2_c = make_int2(c_1, c_2);
  // CHECK-NEXT: int2 int_2_uc = make_int2(uc_1, uc_2);
  // CHECK-NEXT: int2 int_2_s = make_int2(s_1, s_2);
  // CHECK-NEXT: int2 int_2_us = make_int2(us_1, us_2);
  // CHECK-NEXT: int2 int_2_i = make_int2(i_1, i_2);
  // CHECK-NEXT: int2 int_2_ui = make_int2(ui_1, ui_2);
  // CHECK-NEXT: int2 int_2_f = make_int2(f_1, f_2);
  // CHECK-NEXT: int2 int_2_l = make_int2(l_1, l_2);
  // CHECK-NEXT: int2 int_2_ul = make_int2(ul_1, ul_2);
  // CHECK-NEXT: int2 int_2_d = make_int2(d_1, d_2);
  // CHECK-NEXT: int2 int_2_ll = make_int2(ll_1, ll_2);
  // CHECK-NEXT: int2 int_2_ull = make_int2(ull_1, ull_2);
  int2 int_2_c = make_int2(c_1, c_2);
  int2 int_2_uc = make_int2(uc_1, uc_2);
  int2 int_2_s = make_int2(s_1, s_2);
  int2 int_2_us = make_int2(us_1, us_2);
  int2 int_2_i = make_int2(i_1, i_2);
  int2 int_2_ui = make_int2(ui_1, ui_2);
  int2 int_2_f = make_int2(f_1, f_2);
  int2 int_2_l = make_int2(l_1, l_2);
  int2 int_2_ul = make_int2(ul_1, ul_2);
  int2 int_2_d = make_int2(d_1, d_2);
  int2 int_2_ll = make_int2(ll_1, ll_2);
  int2 int_2_ull = make_int2(ull_1, ull_2);

  // CHECK: int3 int_3_c = make_int3(c_1, c_2, c_3);
  // CHECK-NEXT: int3 int_3_uc = make_int3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: int3 int_3_s = make_int3(s_1, s_2, s_3);
  // CHECK-NEXT: int3 int_3_us = make_int3(us_1, us_2, us_3);
  // CHECK-NEXT: int3 int_3_i = make_int3(i_1, i_2, i_3);
  // CHECK-NEXT: int3 int_3_ui = make_int3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: int3 int_3_f = make_int3(f_1, f_2, f_3);
  // CHECK-NEXT: int3 int_3_l = make_int3(l_1, l_2, l_3);
  // CHECK-NEXT: int3 int_3_ul = make_int3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: int3 int_3_d = make_int3(d_1, d_2, d_3);
  // CHECK-NEXT: int3 int_3_ll = make_int3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: int3 int_3_ull = make_int3(ull_1, ull_2, ull_3);
  int3 int_3_c = make_int3(c_1, c_2, c_3);
  int3 int_3_uc = make_int3(uc_1, uc_2, uc_3);
  int3 int_3_s = make_int3(s_1, s_2, s_3);
  int3 int_3_us = make_int3(us_1, us_2, us_3);
  int3 int_3_i = make_int3(i_1, i_2, i_3);
  int3 int_3_ui = make_int3(ui_1, ui_2, ui_3);
  int3 int_3_f = make_int3(f_1, f_2, f_3);
  int3 int_3_l = make_int3(l_1, l_2, l_3);
  int3 int_3_ul = make_int3(ul_1, ul_2, ul_3);
  int3 int_3_d = make_int3(d_1, d_2, d_3);
  int3 int_3_ll = make_int3(ll_1, ll_2, ll_3);
  int3 int_3_ull = make_int3(ull_1, ull_2, ull_3);

  // CHECK: int4 int_4_c = make_int4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: int4 int_4_uc = make_int4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: int4 int_4_s = make_int4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: int4 int_4_us = make_int4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: int4 int_4_i = make_int4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: int4 int_4_ui = make_int4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: int4 int_4_f = make_int4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: int4 int_4_l = make_int4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: int4 int_4_ul = make_int4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: int4 int_4_d = make_int4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: int4 int_4_ll = make_int4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: int4 int_4_ull = make_int4(ull_1, ull_2, ull_3, ull_4);
  int4 int_4_c = make_int4(c_1, c_2, c_3, c_4);
  int4 int_4_uc = make_int4(uc_1, uc_2, uc_3, uc_4);
  int4 int_4_s = make_int4(s_1, s_2, s_3, s_4);
  int4 int_4_us = make_int4(us_1, us_2, us_3, us_4);
  int4 int_4_i = make_int4(i_1, i_2, i_3, i_4);
  int4 int_4_ui = make_int4(ui_1, ui_2, ui_3, ui_4);
  int4 int_4_f = make_int4(f_1, f_2, f_3, f_4);
  int4 int_4_l = make_int4(l_1, l_2, l_3, l_4);
  int4 int_4_ul = make_int4(ul_1, ul_2, ul_3, ul_4);
  int4 int_4_d = make_int4(d_1, d_2, d_3, d_4);
  int4 int_4_ll = make_int4(ll_1, ll_2, ll_3, ll_4);
  int4 int_4_ull = make_int4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: uint1 uint_1_c = make_uint1(c_1);
  // CHECK-NEXT: uint1 uint_1_uc = make_uint1(uc_1);
  // CHECK-NEXT: uint1 uint_1_s = make_uint1(s_1);
  // CHECK-NEXT: uint1 uint_1_us = make_uint1(us_1);
  // CHECK-NEXT: uint1 uint_1_i = make_uint1(i_1);
  // CHECK-NEXT: uint1 uint_1_ui = make_uint1(ui_1);
  // CHECK-NEXT: uint1 uint_1_f = make_uint1(f_1);
  // CHECK-NEXT: uint1 uint_1_l = make_uint1(l_1);
  // CHECK-NEXT: uint1 uint_1_ul = make_uint1(ul_1);
  // CHECK-NEXT: uint1 uint_1_d = make_uint1(d_1);
  // CHECK-NEXT: uint1 uint_1_ll = make_uint1(ll_1);
  // CHECK-NEXT: uint1 uint_1_ull = make_uint1(ull_1);
  uint1 uint_1_c = make_uint1(c_1);
  uint1 uint_1_uc = make_uint1(uc_1);
  uint1 uint_1_s = make_uint1(s_1);
  uint1 uint_1_us = make_uint1(us_1);
  uint1 uint_1_i = make_uint1(i_1);
  uint1 uint_1_ui = make_uint1(ui_1);
  uint1 uint_1_f = make_uint1(f_1);
  uint1 uint_1_l = make_uint1(l_1);
  uint1 uint_1_ul = make_uint1(ul_1);
  uint1 uint_1_d = make_uint1(d_1);
  uint1 uint_1_ll = make_uint1(ll_1);
  uint1 uint_1_ull = make_uint1(ull_1);

  // CHECK: uint2 uint_2_c = make_uint2(c_1, c_2);
  // CHECK-NEXT: uint2 uint_2_uc = make_uint2(uc_1, uc_2);
  // CHECK-NEXT: uint2 uint_2_s = make_uint2(s_1, s_2);
  // CHECK-NEXT: uint2 uint_2_us = make_uint2(us_1, us_2);
  // CHECK-NEXT: uint2 uint_2_i = make_uint2(i_1, i_2);
  // CHECK-NEXT: uint2 uint_2_ui = make_uint2(ui_1, ui_2);
  // CHECK-NEXT: uint2 uint_2_f = make_uint2(f_1, f_2);
  // CHECK-NEXT: uint2 uint_2_l = make_uint2(l_1, l_2);
  // CHECK-NEXT: uint2 uint_2_ul = make_uint2(ul_1, ul_2);
  // CHECK-NEXT: uint2 uint_2_d = make_uint2(d_1, d_2);
  // CHECK-NEXT: uint2 uint_2_ll = make_uint2(ll_1, ll_2);
  // CHECK-NEXT: uint2 uint_2_ull = make_uint2(ull_1, ull_2);
  uint2 uint_2_c = make_uint2(c_1, c_2);
  uint2 uint_2_uc = make_uint2(uc_1, uc_2);
  uint2 uint_2_s = make_uint2(s_1, s_2);
  uint2 uint_2_us = make_uint2(us_1, us_2);
  uint2 uint_2_i = make_uint2(i_1, i_2);
  uint2 uint_2_ui = make_uint2(ui_1, ui_2);
  uint2 uint_2_f = make_uint2(f_1, f_2);
  uint2 uint_2_l = make_uint2(l_1, l_2);
  uint2 uint_2_ul = make_uint2(ul_1, ul_2);
  uint2 uint_2_d = make_uint2(d_1, d_2);
  uint2 uint_2_ll = make_uint2(ll_1, ll_2);
  uint2 uint_2_ull = make_uint2(ull_1, ull_2);

  // CHECK: uint3 uint_3_c = make_uint3(c_1, c_2, c_3);
  // CHECK-NEXT: uint3 uint_3_uc = make_uint3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: uint3 uint_3_s = make_uint3(s_1, s_2, s_3);
  // CHECK-NEXT: uint3 uint_3_us = make_uint3(us_1, us_2, us_3);
  // CHECK-NEXT: uint3 uint_3_i = make_uint3(i_1, i_2, i_3);
  // CHECK-NEXT: uint3 uint_3_ui = make_uint3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: uint3 uint_3_f = make_uint3(f_1, f_2, f_3);
  // CHECK-NEXT: uint3 uint_3_l = make_uint3(l_1, l_2, l_3);
  // CHECK-NEXT: uint3 uint_3_ul = make_uint3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: uint3 uint_3_d = make_uint3(d_1, d_2, d_3);
  // CHECK-NEXT: uint3 uint_3_ll = make_uint3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: uint3 uint_3_ull = make_uint3(ull_1, ull_2, ull_3);
  uint3 uint_3_c = make_uint3(c_1, c_2, c_3);
  uint3 uint_3_uc = make_uint3(uc_1, uc_2, uc_3);
  uint3 uint_3_s = make_uint3(s_1, s_2, s_3);
  uint3 uint_3_us = make_uint3(us_1, us_2, us_3);
  uint3 uint_3_i = make_uint3(i_1, i_2, i_3);
  uint3 uint_3_ui = make_uint3(ui_1, ui_2, ui_3);
  uint3 uint_3_f = make_uint3(f_1, f_2, f_3);
  uint3 uint_3_l = make_uint3(l_1, l_2, l_3);
  uint3 uint_3_ul = make_uint3(ul_1, ul_2, ul_3);
  uint3 uint_3_d = make_uint3(d_1, d_2, d_3);
  uint3 uint_3_ll = make_uint3(ll_1, ll_2, ll_3);
  uint3 uint_3_ull = make_uint3(ull_1, ull_2, ull_3);

  // CHECK: uint4 uint_4_c = make_uint4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: uint4 uint_4_uc = make_uint4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: uint4 uint_4_s = make_uint4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: uint4 uint_4_us = make_uint4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: uint4 uint_4_i = make_uint4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: uint4 uint_4_ui = make_uint4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: uint4 uint_4_f = make_uint4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: uint4 uint_4_l = make_uint4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: uint4 uint_4_ul = make_uint4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: uint4 uint_4_d = make_uint4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: uint4 uint_4_ll = make_uint4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: uint4 uint_4_ull = make_uint4(ull_1, ull_2, ull_3, ull_4);
  uint4 uint_4_c = make_uint4(c_1, c_2, c_3, c_4);
  uint4 uint_4_uc = make_uint4(uc_1, uc_2, uc_3, uc_4);
  uint4 uint_4_s = make_uint4(s_1, s_2, s_3, s_4);
  uint4 uint_4_us = make_uint4(us_1, us_2, us_3, us_4);
  uint4 uint_4_i = make_uint4(i_1, i_2, i_3, i_4);
  uint4 uint_4_ui = make_uint4(ui_1, ui_2, ui_3, ui_4);
  uint4 uint_4_f = make_uint4(f_1, f_2, f_3, f_4);
  uint4 uint_4_l = make_uint4(l_1, l_2, l_3, l_4);
  uint4 uint_4_ul = make_uint4(ul_1, ul_2, ul_3, ul_4);
  uint4 uint_4_d = make_uint4(d_1, d_2, d_3, d_4);
  uint4 uint_4_ll = make_uint4(ll_1, ll_2, ll_3, ll_4);
  uint4 uint_4_ull = make_uint4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: long1 long_1_c = make_long1(c_1);
  // CHECK-NEXT: long1 long_1_uc = make_long1(uc_1);
  // CHECK-NEXT: long1 long_1_s = make_long1(s_1);
  // CHECK-NEXT: long1 long_1_us = make_long1(us_1);
  // CHECK-NEXT: long1 long_1_i = make_long1(i_1);
  // CHECK-NEXT: long1 long_1_ui = make_long1(ui_1);
  // CHECK-NEXT: long1 long_1_f = make_long1(f_1);
  // CHECK-NEXT: long1 long_1_l = make_long1(l_1);
  // CHECK-NEXT: long1 long_1_ul = make_long1(ul_1);
  // CHECK-NEXT: long1 long_1_d = make_long1(d_1);
  // CHECK-NEXT: long1 long_1_ll = make_long1(ll_1);
  // CHECK-NEXT: long1 long_1_ull = make_long1(ull_1);
  long1 long_1_c = make_long1(c_1);
  long1 long_1_uc = make_long1(uc_1);
  long1 long_1_s = make_long1(s_1);
  long1 long_1_us = make_long1(us_1);
  long1 long_1_i = make_long1(i_1);
  long1 long_1_ui = make_long1(ui_1);
  long1 long_1_f = make_long1(f_1);
  long1 long_1_l = make_long1(l_1);
  long1 long_1_ul = make_long1(ul_1);
  long1 long_1_d = make_long1(d_1);
  long1 long_1_ll = make_long1(ll_1);
  long1 long_1_ull = make_long1(ull_1);

  // CHECK: long2 long_2_c = make_long2(c_1, c_2);
  // CHECK-NEXT: long2 long_2_uc = make_long2(uc_1, uc_2);
  // CHECK-NEXT: long2 long_2_s = make_long2(s_1, s_2);
  // CHECK-NEXT: long2 long_2_us = make_long2(us_1, us_2);
  // CHECK-NEXT: long2 long_2_i = make_long2(i_1, i_2);
  // CHECK-NEXT: long2 long_2_ui = make_long2(ui_1, ui_2);
  // CHECK-NEXT: long2 long_2_f = make_long2(f_1, f_2);
  // CHECK-NEXT: long2 long_2_l = make_long2(l_1, l_2);
  // CHECK-NEXT: long2 long_2_ul = make_long2(ul_1, ul_2);
  // CHECK-NEXT: long2 long_2_d = make_long2(d_1, d_2);
  // CHECK-NEXT: long2 long_2_ll = make_long2(ll_1, ll_2);
  // CHECK-NEXT: long2 long_2_ull = make_long2(ull_1, ull_2);
  long2 long_2_c = make_long2(c_1, c_2);
  long2 long_2_uc = make_long2(uc_1, uc_2);
  long2 long_2_s = make_long2(s_1, s_2);
  long2 long_2_us = make_long2(us_1, us_2);
  long2 long_2_i = make_long2(i_1, i_2);
  long2 long_2_ui = make_long2(ui_1, ui_2);
  long2 long_2_f = make_long2(f_1, f_2);
  long2 long_2_l = make_long2(l_1, l_2);
  long2 long_2_ul = make_long2(ul_1, ul_2);
  long2 long_2_d = make_long2(d_1, d_2);
  long2 long_2_ll = make_long2(ll_1, ll_2);
  long2 long_2_ull = make_long2(ull_1, ull_2);

  // CHECK: long3 long_3_c = make_long3(c_1, c_2, c_3);
  // CHECK-NEXT: long3 long_3_uc = make_long3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: long3 long_3_s = make_long3(s_1, s_2, s_3);
  // CHECK-NEXT: long3 long_3_us = make_long3(us_1, us_2, us_3);
  // CHECK-NEXT: long3 long_3_i = make_long3(i_1, i_2, i_3);
  // CHECK-NEXT: long3 long_3_ui = make_long3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: long3 long_3_f = make_long3(f_1, f_2, f_3);
  // CHECK-NEXT: long3 long_3_l = make_long3(l_1, l_2, l_3);
  // CHECK-NEXT: long3 long_3_ul = make_long3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: long3 long_3_d = make_long3(d_1, d_2, d_3);
  // CHECK-NEXT: long3 long_3_ll = make_long3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: long3 long_3_ull = make_long3(ull_1, ull_2, ull_3);
  long3 long_3_c = make_long3(c_1, c_2, c_3);
  long3 long_3_uc = make_long3(uc_1, uc_2, uc_3);
  long3 long_3_s = make_long3(s_1, s_2, s_3);
  long3 long_3_us = make_long3(us_1, us_2, us_3);
  long3 long_3_i = make_long3(i_1, i_2, i_3);
  long3 long_3_ui = make_long3(ui_1, ui_2, ui_3);
  long3 long_3_f = make_long3(f_1, f_2, f_3);
  long3 long_3_l = make_long3(l_1, l_2, l_3);
  long3 long_3_ul = make_long3(ul_1, ul_2, ul_3);
  long3 long_3_d = make_long3(d_1, d_2, d_3);
  long3 long_3_ll = make_long3(ll_1, ll_2, ll_3);
  long3 long_3_ull = make_long3(ull_1, ull_2, ull_3);

  // CHECK: long4 long_4_c = make_long4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: long4 long_4_uc = make_long4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: long4 long_4_s = make_long4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: long4 long_4_us = make_long4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: long4 long_4_i = make_long4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: long4 long_4_ui = make_long4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: long4 long_4_f = make_long4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: long4 long_4_l = make_long4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: long4 long_4_ul = make_long4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: long4 long_4_d = make_long4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: long4 long_4_ll = make_long4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: long4 long_4_ull = make_long4(ull_1, ull_2, ull_3, ull_4);
  long4 long_4_c = make_long4(c_1, c_2, c_3, c_4);
  long4 long_4_uc = make_long4(uc_1, uc_2, uc_3, uc_4);
  long4 long_4_s = make_long4(s_1, s_2, s_3, s_4);
  long4 long_4_us = make_long4(us_1, us_2, us_3, us_4);
  long4 long_4_i = make_long4(i_1, i_2, i_3, i_4);
  long4 long_4_ui = make_long4(ui_1, ui_2, ui_3, ui_4);
  long4 long_4_f = make_long4(f_1, f_2, f_3, f_4);
  long4 long_4_l = make_long4(l_1, l_2, l_3, l_4);
  long4 long_4_ul = make_long4(ul_1, ul_2, ul_3, ul_4);
  long4 long_4_d = make_long4(d_1, d_2, d_3, d_4);
  long4 long_4_ll = make_long4(ll_1, ll_2, ll_3, ll_4);
  long4 long_4_ull = make_long4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: ulong1 ulong_1_c = make_ulong1(c_1);
  // CHECK-NEXT: ulong1 ulong_1_uc = make_ulong1(uc_1);
  // CHECK-NEXT: ulong1 ulong_1_s = make_ulong1(s_1);
  // CHECK-NEXT: ulong1 ulong_1_us = make_ulong1(us_1);
  // CHECK-NEXT: ulong1 ulong_1_i = make_ulong1(i_1);
  // CHECK-NEXT: ulong1 ulong_1_ui = make_ulong1(ui_1);
  // CHECK-NEXT: ulong1 ulong_1_f = make_ulong1(f_1);
  // CHECK-NEXT: ulong1 ulong_1_l = make_ulong1(l_1);
  // CHECK-NEXT: ulong1 ulong_1_ul = make_ulong1(ul_1);
  // CHECK-NEXT: ulong1 ulong_1_d = make_ulong1(d_1);
  // CHECK-NEXT: ulong1 ulong_1_ll = make_ulong1(ll_1);
  // CHECK-NEXT: ulong1 ulong_1_ull = make_ulong1(ull_1);
  ulong1 ulong_1_c = make_ulong1(c_1);
  ulong1 ulong_1_uc = make_ulong1(uc_1);
  ulong1 ulong_1_s = make_ulong1(s_1);
  ulong1 ulong_1_us = make_ulong1(us_1);
  ulong1 ulong_1_i = make_ulong1(i_1);
  ulong1 ulong_1_ui = make_ulong1(ui_1);
  ulong1 ulong_1_f = make_ulong1(f_1);
  ulong1 ulong_1_l = make_ulong1(l_1);
  ulong1 ulong_1_ul = make_ulong1(ul_1);
  ulong1 ulong_1_d = make_ulong1(d_1);
  ulong1 ulong_1_ll = make_ulong1(ll_1);
  ulong1 ulong_1_ull = make_ulong1(ull_1);

  // CHECK: ulong2 ulong_2_c = make_ulong2(c_1, c_2);
  // CHECK-NEXT: ulong2 ulong_2_uc = make_ulong2(uc_1, uc_2);
  // CHECK-NEXT: ulong2 ulong_2_s = make_ulong2(s_1, s_2);
  // CHECK-NEXT: ulong2 ulong_2_us = make_ulong2(us_1, us_2);
  // CHECK-NEXT: ulong2 ulong_2_i = make_ulong2(i_1, i_2);
  // CHECK-NEXT: ulong2 ulong_2_ui = make_ulong2(ui_1, ui_2);
  // CHECK-NEXT: ulong2 ulong_2_f = make_ulong2(f_1, f_2);
  // CHECK-NEXT: ulong2 ulong_2_l = make_ulong2(l_1, l_2);
  // CHECK-NEXT: ulong2 ulong_2_ul = make_ulong2(ul_1, ul_2);
  // CHECK-NEXT: ulong2 ulong_2_d = make_ulong2(d_1, d_2);
  // CHECK-NEXT: ulong2 ulong_2_ll = make_ulong2(ll_1, ll_2);
  // CHECK-NEXT: ulong2 ulong_2_ull = make_ulong2(ull_1, ull_2);
  ulong2 ulong_2_c = make_ulong2(c_1, c_2);
  ulong2 ulong_2_uc = make_ulong2(uc_1, uc_2);
  ulong2 ulong_2_s = make_ulong2(s_1, s_2);
  ulong2 ulong_2_us = make_ulong2(us_1, us_2);
  ulong2 ulong_2_i = make_ulong2(i_1, i_2);
  ulong2 ulong_2_ui = make_ulong2(ui_1, ui_2);
  ulong2 ulong_2_f = make_ulong2(f_1, f_2);
  ulong2 ulong_2_l = make_ulong2(l_1, l_2);
  ulong2 ulong_2_ul = make_ulong2(ul_1, ul_2);
  ulong2 ulong_2_d = make_ulong2(d_1, d_2);
  ulong2 ulong_2_ll = make_ulong2(ll_1, ll_2);
  ulong2 ulong_2_ull = make_ulong2(ull_1, ull_2);

  // CHECK: ulong3 ulong_3_c = make_ulong3(c_1, c_2, c_3);
  // CHECK-NEXT: ulong3 ulong_3_uc = make_ulong3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: ulong3 ulong_3_s = make_ulong3(s_1, s_2, s_3);
  // CHECK-NEXT: ulong3 ulong_3_us = make_ulong3(us_1, us_2, us_3);
  // CHECK-NEXT: ulong3 ulong_3_i = make_ulong3(i_1, i_2, i_3);
  // CHECK-NEXT: ulong3 ulong_3_ui = make_ulong3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: ulong3 ulong_3_f = make_ulong3(f_1, f_2, f_3);
  // CHECK-NEXT: ulong3 ulong_3_l = make_ulong3(l_1, l_2, l_3);
  // CHECK-NEXT: ulong3 ulong_3_ul = make_ulong3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: ulong3 ulong_3_d = make_ulong3(d_1, d_2, d_3);
  // CHECK-NEXT: ulong3 ulong_3_ll = make_ulong3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: ulong3 ulong_3_ull = make_ulong3(ull_1, ull_2, ull_3);
  ulong3 ulong_3_c = make_ulong3(c_1, c_2, c_3);
  ulong3 ulong_3_uc = make_ulong3(uc_1, uc_2, uc_3);
  ulong3 ulong_3_s = make_ulong3(s_1, s_2, s_3);
  ulong3 ulong_3_us = make_ulong3(us_1, us_2, us_3);
  ulong3 ulong_3_i = make_ulong3(i_1, i_2, i_3);
  ulong3 ulong_3_ui = make_ulong3(ui_1, ui_2, ui_3);
  ulong3 ulong_3_f = make_ulong3(f_1, f_2, f_3);
  ulong3 ulong_3_l = make_ulong3(l_1, l_2, l_3);
  ulong3 ulong_3_ul = make_ulong3(ul_1, ul_2, ul_3);
  ulong3 ulong_3_d = make_ulong3(d_1, d_2, d_3);
  ulong3 ulong_3_ll = make_ulong3(ll_1, ll_2, ll_3);
  ulong3 ulong_3_ull = make_ulong3(ull_1, ull_2, ull_3);

  // CHECK: ulong4 ulong_4_c = make_ulong4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: ulong4 ulong_4_uc = make_ulong4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: ulong4 ulong_4_s = make_ulong4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: ulong4 ulong_4_us = make_ulong4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: ulong4 ulong_4_i = make_ulong4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: ulong4 ulong_4_ui = make_ulong4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: ulong4 ulong_4_f = make_ulong4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: ulong4 ulong_4_l = make_ulong4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: ulong4 ulong_4_ul = make_ulong4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: ulong4 ulong_4_d = make_ulong4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: ulong4 ulong_4_ll = make_ulong4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: ulong4 ulong_4_ull = make_ulong4(ull_1, ull_2, ull_3, ull_4);
  ulong4 ulong_4_c = make_ulong4(c_1, c_2, c_3, c_4);
  ulong4 ulong_4_uc = make_ulong4(uc_1, uc_2, uc_3, uc_4);
  ulong4 ulong_4_s = make_ulong4(s_1, s_2, s_3, s_4);
  ulong4 ulong_4_us = make_ulong4(us_1, us_2, us_3, us_4);
  ulong4 ulong_4_i = make_ulong4(i_1, i_2, i_3, i_4);
  ulong4 ulong_4_ui = make_ulong4(ui_1, ui_2, ui_3, ui_4);
  ulong4 ulong_4_f = make_ulong4(f_1, f_2, f_3, f_4);
  ulong4 ulong_4_l = make_ulong4(l_1, l_2, l_3, l_4);
  ulong4 ulong_4_ul = make_ulong4(ul_1, ul_2, ul_3, ul_4);
  ulong4 ulong_4_d = make_ulong4(d_1, d_2, d_3, d_4);
  ulong4 ulong_4_ll = make_ulong4(ll_1, ll_2, ll_3, ll_4);
  ulong4 ulong_4_ull = make_ulong4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: float1 float_1_c = make_float1(c_1);
  // CHECK-NEXT: float1 float_1_uc = make_float1(uc_1);
  // CHECK-NEXT: float1 float_1_s = make_float1(s_1);
  // CHECK-NEXT: float1 float_1_us = make_float1(us_1);
  // CHECK-NEXT: float1 float_1_i = make_float1(i_1);
  // CHECK-NEXT: float1 float_1_ui = make_float1(ui_1);
  // CHECK-NEXT: float1 float_1_f = make_float1(f_1);
  // CHECK-NEXT: float1 float_1_l = make_float1(l_1);
  // CHECK-NEXT: float1 float_1_ul = make_float1(ul_1);
  // CHECK-NEXT: float1 float_1_d = make_float1(d_1);
  // CHECK-NEXT: float1 float_1_ll = make_float1(ll_1);
  // CHECK-NEXT: float1 float_1_ull = make_float1(ull_1);
  float1 float_1_c = make_float1(c_1);
  float1 float_1_uc = make_float1(uc_1);
  float1 float_1_s = make_float1(s_1);
  float1 float_1_us = make_float1(us_1);
  float1 float_1_i = make_float1(i_1);
  float1 float_1_ui = make_float1(ui_1);
  float1 float_1_f = make_float1(f_1);
  float1 float_1_l = make_float1(l_1);
  float1 float_1_ul = make_float1(ul_1);
  float1 float_1_d = make_float1(d_1);
  float1 float_1_ll = make_float1(ll_1);
  float1 float_1_ull = make_float1(ull_1);

  // CHECK: float2 float_2_c = make_float2(c_1, c_2);
  // CHECK-NEXT: float2 float_2_uc = make_float2(uc_1, uc_2);
  // CHECK-NEXT: float2 float_2_s = make_float2(s_1, s_2);
  // CHECK-NEXT: float2 float_2_us = make_float2(us_1, us_2);
  // CHECK-NEXT: float2 float_2_i = make_float2(i_1, i_2);
  // CHECK-NEXT: float2 float_2_ui = make_float2(ui_1, ui_2);
  // CHECK-NEXT: float2 float_2_f = make_float2(f_1, f_2);
  // CHECK-NEXT: float2 float_2_l = make_float2(l_1, l_2);
  // CHECK-NEXT: float2 float_2_ul = make_float2(ul_1, ul_2);
  // CHECK-NEXT: float2 float_2_d = make_float2(d_1, d_2);
  // CHECK-NEXT: float2 float_2_ll = make_float2(ll_1, ll_2);
  // CHECK-NEXT: float2 float_2_ull = make_float2(ull_1, ull_2);
  float2 float_2_c = make_float2(c_1, c_2);
  float2 float_2_uc = make_float2(uc_1, uc_2);
  float2 float_2_s = make_float2(s_1, s_2);
  float2 float_2_us = make_float2(us_1, us_2);
  float2 float_2_i = make_float2(i_1, i_2);
  float2 float_2_ui = make_float2(ui_1, ui_2);
  float2 float_2_f = make_float2(f_1, f_2);
  float2 float_2_l = make_float2(l_1, l_2);
  float2 float_2_ul = make_float2(ul_1, ul_2);
  float2 float_2_d = make_float2(d_1, d_2);
  float2 float_2_ll = make_float2(ll_1, ll_2);
  float2 float_2_ull = make_float2(ull_1, ull_2);

  // CHECK: float3 float_3_c = make_float3(c_1, c_2, c_3);
  // CHECK-NEXT: float3 float_3_uc = make_float3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: float3 float_3_s = make_float3(s_1, s_2, s_3);
  // CHECK-NEXT: float3 float_3_us = make_float3(us_1, us_2, us_3);
  // CHECK-NEXT: float3 float_3_i = make_float3(i_1, i_2, i_3);
  // CHECK-NEXT: float3 float_3_ui = make_float3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: float3 float_3_f = make_float3(f_1, f_2, f_3);
  // CHECK-NEXT: float3 float_3_l = make_float3(l_1, l_2, l_3);
  // CHECK-NEXT: float3 float_3_ul = make_float3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: float3 float_3_d = make_float3(d_1, d_2, d_3);
  // CHECK-NEXT: float3 float_3_ll = make_float3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: float3 float_3_ull = make_float3(ull_1, ull_2, ull_3);
  float3 float_3_c = make_float3(c_1, c_2, c_3);
  float3 float_3_uc = make_float3(uc_1, uc_2, uc_3);
  float3 float_3_s = make_float3(s_1, s_2, s_3);
  float3 float_3_us = make_float3(us_1, us_2, us_3);
  float3 float_3_i = make_float3(i_1, i_2, i_3);
  float3 float_3_ui = make_float3(ui_1, ui_2, ui_3);
  float3 float_3_f = make_float3(f_1, f_2, f_3);
  float3 float_3_l = make_float3(l_1, l_2, l_3);
  float3 float_3_ul = make_float3(ul_1, ul_2, ul_3);
  float3 float_3_d = make_float3(d_1, d_2, d_3);
  float3 float_3_ll = make_float3(ll_1, ll_2, ll_3);
  float3 float_3_ull = make_float3(ull_1, ull_2, ull_3);

  // CHECK: float4 float_4_c = make_float4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: float4 float_4_uc = make_float4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: float4 float_4_s = make_float4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: float4 float_4_us = make_float4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: float4 float_4_i = make_float4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: float4 float_4_ui = make_float4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: float4 float_4_f = make_float4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: float4 float_4_l = make_float4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: float4 float_4_ul = make_float4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: float4 float_4_d = make_float4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: float4 float_4_ll = make_float4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: float4 float_4_ull = make_float4(ull_1, ull_2, ull_3, ull_4);
  float4 float_4_c = make_float4(c_1, c_2, c_3, c_4);
  float4 float_4_uc = make_float4(uc_1, uc_2, uc_3, uc_4);
  float4 float_4_s = make_float4(s_1, s_2, s_3, s_4);
  float4 float_4_us = make_float4(us_1, us_2, us_3, us_4);
  float4 float_4_i = make_float4(i_1, i_2, i_3, i_4);
  float4 float_4_ui = make_float4(ui_1, ui_2, ui_3, ui_4);
  float4 float_4_f = make_float4(f_1, f_2, f_3, f_4);
  float4 float_4_l = make_float4(l_1, l_2, l_3, l_4);
  float4 float_4_ul = make_float4(ul_1, ul_2, ul_3, ul_4);
  float4 float_4_d = make_float4(d_1, d_2, d_3, d_4);
  float4 float_4_ll = make_float4(ll_1, ll_2, ll_3, ll_4);
  float4 float_4_ull = make_float4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: double1 double_1_c = make_double1(c_1);
  // CHECK-NEXT: double1 double_1_uc = make_double1(uc_1);
  // CHECK-NEXT: double1 double_1_s = make_double1(s_1);
  // CHECK-NEXT: double1 double_1_us = make_double1(us_1);
  // CHECK-NEXT: double1 double_1_i = make_double1(i_1);
  // CHECK-NEXT: double1 double_1_ui = make_double1(ui_1);
  // CHECK-NEXT: double1 double_1_f = make_double1(f_1);
  // CHECK-NEXT: double1 double_1_l = make_double1(l_1);
  // CHECK-NEXT: double1 double_1_ul = make_double1(ul_1);
  // CHECK-NEXT: double1 double_1_d = make_double1(d_1);
  // CHECK-NEXT: double1 double_1_ll = make_double1(ll_1);
  // CHECK-NEXT: double1 double_1_ull = make_double1(ull_1);
  double1 double_1_c = make_double1(c_1);
  double1 double_1_uc = make_double1(uc_1);
  double1 double_1_s = make_double1(s_1);
  double1 double_1_us = make_double1(us_1);
  double1 double_1_i = make_double1(i_1);
  double1 double_1_ui = make_double1(ui_1);
  double1 double_1_f = make_double1(f_1);
  double1 double_1_l = make_double1(l_1);
  double1 double_1_ul = make_double1(ul_1);
  double1 double_1_d = make_double1(d_1);
  double1 double_1_ll = make_double1(ll_1);
  double1 double_1_ull = make_double1(ull_1);

  // CHECK: double2 double_2_c = make_double2(c_1, c_2);
  // CHECK-NEXT: double2 double_2_uc = make_double2(uc_1, uc_2);
  // CHECK-NEXT: double2 double_2_s = make_double2(s_1, s_2);
  // CHECK-NEXT: double2 double_2_us = make_double2(us_1, us_2);
  // CHECK-NEXT: double2 double_2_i = make_double2(i_1, i_2);
  // CHECK-NEXT: double2 double_2_ui = make_double2(ui_1, ui_2);
  // CHECK-NEXT: double2 double_2_f = make_double2(f_1, f_2);
  // CHECK-NEXT: double2 double_2_l = make_double2(l_1, l_2);
  // CHECK-NEXT: double2 double_2_ul = make_double2(ul_1, ul_2);
  // CHECK-NEXT: double2 double_2_d = make_double2(d_1, d_2);
  // CHECK-NEXT: double2 double_2_ll = make_double2(ll_1, ll_2);
  // CHECK-NEXT: double2 double_2_ull = make_double2(ull_1, ull_2);
  double2 double_2_c = make_double2(c_1, c_2);
  double2 double_2_uc = make_double2(uc_1, uc_2);
  double2 double_2_s = make_double2(s_1, s_2);
  double2 double_2_us = make_double2(us_1, us_2);
  double2 double_2_i = make_double2(i_1, i_2);
  double2 double_2_ui = make_double2(ui_1, ui_2);
  double2 double_2_f = make_double2(f_1, f_2);
  double2 double_2_l = make_double2(l_1, l_2);
  double2 double_2_ul = make_double2(ul_1, ul_2);
  double2 double_2_d = make_double2(d_1, d_2);
  double2 double_2_ll = make_double2(ll_1, ll_2);
  double2 double_2_ull = make_double2(ull_1, ull_2);

  // CHECK: double3 double_3_c = make_double3(c_1, c_2, c_3);
  // CHECK-NEXT: double3 double_3_uc = make_double3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: double3 double_3_s = make_double3(s_1, s_2, s_3);
  // CHECK-NEXT: double3 double_3_us = make_double3(us_1, us_2, us_3);
  // CHECK-NEXT: double3 double_3_i = make_double3(i_1, i_2, i_3);
  // CHECK-NEXT: double3 double_3_ui = make_double3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: double3 double_3_f = make_double3(f_1, f_2, f_3);
  // CHECK-NEXT: double3 double_3_l = make_double3(l_1, l_2, l_3);
  // CHECK-NEXT: double3 double_3_ul = make_double3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: double3 double_3_d = make_double3(d_1, d_2, d_3);
  // CHECK-NEXT: double3 double_3_ll = make_double3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: double3 double_3_ull = make_double3(ull_1, ull_2, ull_3);
  double3 double_3_c = make_double3(c_1, c_2, c_3);
  double3 double_3_uc = make_double3(uc_1, uc_2, uc_3);
  double3 double_3_s = make_double3(s_1, s_2, s_3);
  double3 double_3_us = make_double3(us_1, us_2, us_3);
  double3 double_3_i = make_double3(i_1, i_2, i_3);
  double3 double_3_ui = make_double3(ui_1, ui_2, ui_3);
  double3 double_3_f = make_double3(f_1, f_2, f_3);
  double3 double_3_l = make_double3(l_1, l_2, l_3);
  double3 double_3_ul = make_double3(ul_1, ul_2, ul_3);
  double3 double_3_d = make_double3(d_1, d_2, d_3);
  double3 double_3_ll = make_double3(ll_1, ll_2, ll_3);
  double3 double_3_ull = make_double3(ull_1, ull_2, ull_3);

  // CHECK: double4 double_4_c = make_double4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: double4 double_4_uc = make_double4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: double4 double_4_s = make_double4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: double4 double_4_us = make_double4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: double4 double_4_i = make_double4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: double4 double_4_ui = make_double4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: double4 double_4_f = make_double4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: double4 double_4_l = make_double4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: double4 double_4_ul = make_double4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: double4 double_4_d = make_double4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: double4 double_4_ll = make_double4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: double4 double_4_ull = make_double4(ull_1, ull_2, ull_3, ull_4);
  double4 double_4_c = make_double4(c_1, c_2, c_3, c_4);
  double4 double_4_uc = make_double4(uc_1, uc_2, uc_3, uc_4);
  double4 double_4_s = make_double4(s_1, s_2, s_3, s_4);
  double4 double_4_us = make_double4(us_1, us_2, us_3, us_4);
  double4 double_4_i = make_double4(i_1, i_2, i_3, i_4);
  double4 double_4_ui = make_double4(ui_1, ui_2, ui_3, ui_4);
  double4 double_4_f = make_double4(f_1, f_2, f_3, f_4);
  double4 double_4_l = make_double4(l_1, l_2, l_3, l_4);
  double4 double_4_ul = make_double4(ul_1, ul_2, ul_3, ul_4);
  double4 double_4_d = make_double4(d_1, d_2, d_3, d_4);
  double4 double_4_ll = make_double4(ll_1, ll_2, ll_3, ll_4);
  double4 double_4_ull = make_double4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: longlong1 longlong_1_c = make_longlong1(c_1);
  // CHECK-NEXT: longlong1 longlong_1_uc = make_longlong1(uc_1);
  // CHECK-NEXT: longlong1 longlong_1_s = make_longlong1(s_1);
  // CHECK-NEXT: longlong1 longlong_1_us = make_longlong1(us_1);
  // CHECK-NEXT: longlong1 longlong_1_i = make_longlong1(i_1);
  // CHECK-NEXT: longlong1 longlong_1_ui = make_longlong1(ui_1);
  // CHECK-NEXT: longlong1 longlong_1_f = make_longlong1(f_1);
  // CHECK-NEXT: longlong1 longlong_1_l = make_longlong1(l_1);
  // CHECK-NEXT: longlong1 longlong_1_ul = make_longlong1(ul_1);
  // CHECK-NEXT: longlong1 longlong_1_d = make_longlong1(d_1);
  // CHECK-NEXT: longlong1 longlong_1_ll = make_longlong1(ll_1);
  // CHECK-NEXT: longlong1 longlong_1_ull = make_longlong1(ull_1);
  longlong1 longlong_1_c = make_longlong1(c_1);
  longlong1 longlong_1_uc = make_longlong1(uc_1);
  longlong1 longlong_1_s = make_longlong1(s_1);
  longlong1 longlong_1_us = make_longlong1(us_1);
  longlong1 longlong_1_i = make_longlong1(i_1);
  longlong1 longlong_1_ui = make_longlong1(ui_1);
  longlong1 longlong_1_f = make_longlong1(f_1);
  longlong1 longlong_1_l = make_longlong1(l_1);
  longlong1 longlong_1_ul = make_longlong1(ul_1);
  longlong1 longlong_1_d = make_longlong1(d_1);
  longlong1 longlong_1_ll = make_longlong1(ll_1);
  longlong1 longlong_1_ull = make_longlong1(ull_1);

  // CHECK: longlong2 longlong_2_c = make_longlong2(c_1, c_2);
  // CHECK-NEXT: longlong2 longlong_2_uc = make_longlong2(uc_1, uc_2);
  // CHECK-NEXT: longlong2 longlong_2_s = make_longlong2(s_1, s_2);
  // CHECK-NEXT: longlong2 longlong_2_us = make_longlong2(us_1, us_2);
  // CHECK-NEXT: longlong2 longlong_2_i = make_longlong2(i_1, i_2);
  // CHECK-NEXT: longlong2 longlong_2_ui = make_longlong2(ui_1, ui_2);
  // CHECK-NEXT: longlong2 longlong_2_f = make_longlong2(f_1, f_2);
  // CHECK-NEXT: longlong2 longlong_2_l = make_longlong2(l_1, l_2);
  // CHECK-NEXT: longlong2 longlong_2_ul = make_longlong2(ul_1, ul_2);
  // CHECK-NEXT: longlong2 longlong_2_d = make_longlong2(d_1, d_2);
  // CHECK-NEXT: longlong2 longlong_2_ll = make_longlong2(ll_1, ll_2);
  // CHECK-NEXT: longlong2 longlong_2_ull = make_longlong2(ull_1, ull_2);
  longlong2 longlong_2_c = make_longlong2(c_1, c_2);
  longlong2 longlong_2_uc = make_longlong2(uc_1, uc_2);
  longlong2 longlong_2_s = make_longlong2(s_1, s_2);
  longlong2 longlong_2_us = make_longlong2(us_1, us_2);
  longlong2 longlong_2_i = make_longlong2(i_1, i_2);
  longlong2 longlong_2_ui = make_longlong2(ui_1, ui_2);
  longlong2 longlong_2_f = make_longlong2(f_1, f_2);
  longlong2 longlong_2_l = make_longlong2(l_1, l_2);
  longlong2 longlong_2_ul = make_longlong2(ul_1, ul_2);
  longlong2 longlong_2_d = make_longlong2(d_1, d_2);
  longlong2 longlong_2_ll = make_longlong2(ll_1, ll_2);
  longlong2 longlong_2_ull = make_longlong2(ull_1, ull_2);

  // CHECK: longlong3 longlong_3_c = make_longlong3(c_1, c_2, c_3);
  // CHECK-NEXT: longlong3 longlong_3_uc = make_longlong3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: longlong3 longlong_3_s = make_longlong3(s_1, s_2, s_3);
  // CHECK-NEXT: longlong3 longlong_3_us = make_longlong3(us_1, us_2, us_3);
  // CHECK-NEXT: longlong3 longlong_3_i = make_longlong3(i_1, i_2, i_3);
  // CHECK-NEXT: longlong3 longlong_3_ui = make_longlong3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: longlong3 longlong_3_f = make_longlong3(f_1, f_2, f_3);
  // CHECK-NEXT: longlong3 longlong_3_l = make_longlong3(l_1, l_2, l_3);
  // CHECK-NEXT: longlong3 longlong_3_ul = make_longlong3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: longlong3 longlong_3_d = make_longlong3(d_1, d_2, d_3);
  // CHECK-NEXT: longlong3 longlong_3_ll = make_longlong3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: longlong3 longlong_3_ull = make_longlong3(ull_1, ull_2, ull_3);
  longlong3 longlong_3_c = make_longlong3(c_1, c_2, c_3);
  longlong3 longlong_3_uc = make_longlong3(uc_1, uc_2, uc_3);
  longlong3 longlong_3_s = make_longlong3(s_1, s_2, s_3);
  longlong3 longlong_3_us = make_longlong3(us_1, us_2, us_3);
  longlong3 longlong_3_i = make_longlong3(i_1, i_2, i_3);
  longlong3 longlong_3_ui = make_longlong3(ui_1, ui_2, ui_3);
  longlong3 longlong_3_f = make_longlong3(f_1, f_2, f_3);
  longlong3 longlong_3_l = make_longlong3(l_1, l_2, l_3);
  longlong3 longlong_3_ul = make_longlong3(ul_1, ul_2, ul_3);
  longlong3 longlong_3_d = make_longlong3(d_1, d_2, d_3);
  longlong3 longlong_3_ll = make_longlong3(ll_1, ll_2, ll_3);
  longlong3 longlong_3_ull = make_longlong3(ull_1, ull_2, ull_3);

  // CHECK: longlong4 longlong_4_c = make_longlong4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: longlong4 longlong_4_uc = make_longlong4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: longlong4 longlong_4_s = make_longlong4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: longlong4 longlong_4_us = make_longlong4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: longlong4 longlong_4_i = make_longlong4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: longlong4 longlong_4_ui = make_longlong4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: longlong4 longlong_4_f = make_longlong4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: longlong4 longlong_4_l = make_longlong4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: longlong4 longlong_4_ul = make_longlong4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: longlong4 longlong_4_d = make_longlong4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: longlong4 longlong_4_ll = make_longlong4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: longlong4 longlong_4_ull = make_longlong4(ull_1, ull_2, ull_3, ull_4);
  longlong4 longlong_4_c = make_longlong4(c_1, c_2, c_3, c_4);
  longlong4 longlong_4_uc = make_longlong4(uc_1, uc_2, uc_3, uc_4);
  longlong4 longlong_4_s = make_longlong4(s_1, s_2, s_3, s_4);
  longlong4 longlong_4_us = make_longlong4(us_1, us_2, us_3, us_4);
  longlong4 longlong_4_i = make_longlong4(i_1, i_2, i_3, i_4);
  longlong4 longlong_4_ui = make_longlong4(ui_1, ui_2, ui_3, ui_4);
  longlong4 longlong_4_f = make_longlong4(f_1, f_2, f_3, f_4);
  longlong4 longlong_4_l = make_longlong4(l_1, l_2, l_3, l_4);
  longlong4 longlong_4_ul = make_longlong4(ul_1, ul_2, ul_3, ul_4);
  longlong4 longlong_4_d = make_longlong4(d_1, d_2, d_3, d_4);
  longlong4 longlong_4_ll = make_longlong4(ll_1, ll_2, ll_3, ll_4);
  longlong4 longlong_4_ull = make_longlong4(ull_1, ull_2, ull_3, ull_4);

  // CHECK: ulonglong1 ulonglong_1_c = make_ulonglong1(c_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_uc = make_ulonglong1(uc_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_s = make_ulonglong1(s_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_us = make_ulonglong1(us_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_i = make_ulonglong1(i_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_ui = make_ulonglong1(ui_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_f = make_ulonglong1(f_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_l = make_ulonglong1(l_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_ul = make_ulonglong1(ul_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_d = make_ulonglong1(d_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_ll = make_ulonglong1(ll_1);
  // CHECK-NEXT: ulonglong1 ulonglong_1_ull = make_ulonglong1(ull_1);
  ulonglong1 ulonglong_1_c = make_ulonglong1(c_1);
  ulonglong1 ulonglong_1_uc = make_ulonglong1(uc_1);
  ulonglong1 ulonglong_1_s = make_ulonglong1(s_1);
  ulonglong1 ulonglong_1_us = make_ulonglong1(us_1);
  ulonglong1 ulonglong_1_i = make_ulonglong1(i_1);
  ulonglong1 ulonglong_1_ui = make_ulonglong1(ui_1);
  ulonglong1 ulonglong_1_f = make_ulonglong1(f_1);
  ulonglong1 ulonglong_1_l = make_ulonglong1(l_1);
  ulonglong1 ulonglong_1_ul = make_ulonglong1(ul_1);
  ulonglong1 ulonglong_1_d = make_ulonglong1(d_1);
  ulonglong1 ulonglong_1_ll = make_ulonglong1(ll_1);
  ulonglong1 ulonglong_1_ull = make_ulonglong1(ull_1);

  // CHECK: ulonglong2 ulonglong_2_c = make_ulonglong2(c_1, c_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_uc = make_ulonglong2(uc_1, uc_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_s = make_ulonglong2(s_1, s_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_us = make_ulonglong2(us_1, us_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_i = make_ulonglong2(i_1, i_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_ui = make_ulonglong2(ui_1, ui_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_f = make_ulonglong2(f_1, f_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_l = make_ulonglong2(l_1, l_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_ul = make_ulonglong2(ul_1, ul_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_d = make_ulonglong2(d_1, d_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_ll = make_ulonglong2(ll_1, ll_2);
  // CHECK-NEXT: ulonglong2 ulonglong_2_ull = make_ulonglong2(ull_1, ull_2);
  ulonglong2 ulonglong_2_c = make_ulonglong2(c_1, c_2);
  ulonglong2 ulonglong_2_uc = make_ulonglong2(uc_1, uc_2);
  ulonglong2 ulonglong_2_s = make_ulonglong2(s_1, s_2);
  ulonglong2 ulonglong_2_us = make_ulonglong2(us_1, us_2);
  ulonglong2 ulonglong_2_i = make_ulonglong2(i_1, i_2);
  ulonglong2 ulonglong_2_ui = make_ulonglong2(ui_1, ui_2);
  ulonglong2 ulonglong_2_f = make_ulonglong2(f_1, f_2);
  ulonglong2 ulonglong_2_l = make_ulonglong2(l_1, l_2);
  ulonglong2 ulonglong_2_ul = make_ulonglong2(ul_1, ul_2);
  ulonglong2 ulonglong_2_d = make_ulonglong2(d_1, d_2);
  ulonglong2 ulonglong_2_ll = make_ulonglong2(ll_1, ll_2);
  ulonglong2 ulonglong_2_ull = make_ulonglong2(ull_1, ull_2);

  // CHECK: ulonglong3 ulonglong_3_c = make_ulonglong3(c_1, c_2, c_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_uc = make_ulonglong3(uc_1, uc_2, uc_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_s = make_ulonglong3(s_1, s_2, s_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_us = make_ulonglong3(us_1, us_2, us_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_i = make_ulonglong3(i_1, i_2, i_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_ui = make_ulonglong3(ui_1, ui_2, ui_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_f = make_ulonglong3(f_1, f_2, f_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_l = make_ulonglong3(l_1, l_2, l_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_ul = make_ulonglong3(ul_1, ul_2, ul_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_d = make_ulonglong3(d_1, d_2, d_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_ll = make_ulonglong3(ll_1, ll_2, ll_3);
  // CHECK-NEXT: ulonglong3 ulonglong_3_ull = make_ulonglong3(ull_1, ull_2, ull_3);
  ulonglong3 ulonglong_3_c = make_ulonglong3(c_1, c_2, c_3);
  ulonglong3 ulonglong_3_uc = make_ulonglong3(uc_1, uc_2, uc_3);
  ulonglong3 ulonglong_3_s = make_ulonglong3(s_1, s_2, s_3);
  ulonglong3 ulonglong_3_us = make_ulonglong3(us_1, us_2, us_3);
  ulonglong3 ulonglong_3_i = make_ulonglong3(i_1, i_2, i_3);
  ulonglong3 ulonglong_3_ui = make_ulonglong3(ui_1, ui_2, ui_3);
  ulonglong3 ulonglong_3_f = make_ulonglong3(f_1, f_2, f_3);
  ulonglong3 ulonglong_3_l = make_ulonglong3(l_1, l_2, l_3);
  ulonglong3 ulonglong_3_ul = make_ulonglong3(ul_1, ul_2, ul_3);
  ulonglong3 ulonglong_3_d = make_ulonglong3(d_1, d_2, d_3);
  ulonglong3 ulonglong_3_ll = make_ulonglong3(ll_1, ll_2, ll_3);
  ulonglong3 ulonglong_3_ull = make_ulonglong3(ull_1, ull_2, ull_3);

  // CHECK: ulonglong4 ulonglong_4_c = make_ulonglong4(c_1, c_2, c_3, c_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_uc = make_ulonglong4(uc_1, uc_2, uc_3, uc_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_s = make_ulonglong4(s_1, s_2, s_3, s_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_us = make_ulonglong4(us_1, us_2, us_3, us_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_i = make_ulonglong4(i_1, i_2, i_3, i_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_ui = make_ulonglong4(ui_1, ui_2, ui_3, ui_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_f = make_ulonglong4(f_1, f_2, f_3, f_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_l = make_ulonglong4(l_1, l_2, l_3, l_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_ul = make_ulonglong4(ul_1, ul_2, ul_3, ul_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_d = make_ulonglong4(d_1, d_2, d_3, d_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_ll = make_ulonglong4(ll_1, ll_2, ll_3, ll_4);
  // CHECK-NEXT: ulonglong4 ulonglong_4_ull = make_ulonglong4(ull_1, ull_2, ull_3, ull_4);
  ulonglong4 ulonglong_4_c = make_ulonglong4(c_1, c_2, c_3, c_4);
  ulonglong4 ulonglong_4_uc = make_ulonglong4(uc_1, uc_2, uc_3, uc_4);
  ulonglong4 ulonglong_4_s = make_ulonglong4(s_1, s_2, s_3, s_4);
  ulonglong4 ulonglong_4_us = make_ulonglong4(us_1, us_2, us_3, us_4);
  ulonglong4 ulonglong_4_i = make_ulonglong4(i_1, i_2, i_3, i_4);
  ulonglong4 ulonglong_4_ui = make_ulonglong4(ui_1, ui_2, ui_3, ui_4);
  ulonglong4 ulonglong_4_f = make_ulonglong4(f_1, f_2, f_3, f_4);
  ulonglong4 ulonglong_4_l = make_ulonglong4(l_1, l_2, l_3, l_4);
  ulonglong4 ulonglong_4_ul = make_ulonglong4(ul_1, ul_2, ul_3, ul_4);
  ulonglong4 ulonglong_4_d = make_ulonglong4(d_1, d_2, d_3, d_4);
  ulonglong4 ulonglong_4_ll = make_ulonglong4(ll_1, ll_2, ll_3, ll_4);
  ulonglong4 ulonglong_4_ull = make_ulonglong4(ull_1, ull_2, ull_3, ull_4);

#if CUDA_VERSION >= 11000
  // CHECK: __hip_bfloat16 _bf16 = { 0.0f };
  // CHECK-NEXT: __hip_bfloat16 bf16a = { 0.0f };
  // CHECK-NEXT: __hip_bfloat16 bf16b = { 0.0f };
  __nv_bfloat16 _bf16 = { 0.0f };
  __nv_bfloat16 bf16a = { 0.0f };
  __nv_bfloat16 bf16b = { 0.0f };

  // CHECK: hip_bfloat16 bf16 = { 0 };
  nv_bfloat16 bf16 = { 0 };

  // CHECK: __hip_bfloat16_raw bf16r = { 0 };
  __nv_bfloat16_raw bf16r = { 0 };

  // CHECK: __hip_bfloat162 bf162 = { 0, 0 };
  // CHECK-NEXT: __hip_bfloat162 bf162a = { 0, 0 };
  // CHECK-NEXT: __hip_bfloat162 bf162b = { 0, 0 };
  __nv_bfloat162 bf162 = { 0, 0 };
  __nv_bfloat162 bf162a = { 0, 0 };
  __nv_bfloat162 bf162b = { 0, 0 };

  // CHECK: __hip_bfloat162_raw bf162r = { 0, 0 };
  __nv_bfloat162_raw bf162r = { 0, 0 };

  // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat16 __double2bfloat16(const double a);
  // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat16 __double2bfloat16(const double a)
  // CHECK: _bf16 = __double2bfloat16(da);
  _bf16 = __double2bfloat16(da);

  // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat16 __float2bfloat16(const float a);
  // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat16 __float2bfloat16(float f);
  // CHECK: _bf16 = __float2bfloat16(fa);
  _bf16 = __float2bfloat16(fa);

  // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ float __bfloat162float(const __nv_bfloat16 a);
  // HIP: __BF16_HOST_DEVICE_STATIC__ float __bfloat162float(__hip_bfloat16 a);
  // CHECK: _bf16 = __bfloat162float(fa);
  _bf16 = __bfloat162float(fa);

  // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ float2 __bfloat1622float2(const __nv_bfloat162 a);
  // HIP: __BF16_HOST_DEVICE_STATIC__ float2 __bfloat1622float2(const __hip_bfloat162 a);
  // CHECK: f2 = __bfloat1622float2(bf162);
  f2 = __bfloat1622float2(bf162);

  // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat162 __float22bfloat162_rn(const float2 a);
  // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat162 __float22bfloat162_rn(const float2 a);
  // CHECK: bf162 = __float22bfloat162_rn(f2);
  bf162 = __float22bfloat162_rn(f2);
#endif

#if CUDA_VERSION >= 11080
  // CHECK: __hip_fp8_storage_t fp8_storage_t;
  __nv_fp8_storage_t fp8_storage_t;

  // CHECK: __hip_fp8x2_storage_t fp8x2_storage_t;
  __nv_fp8x2_storage_t fp8x2_storage_t;

  // CHECK: __hip_fp8x4_storage_t fp8x4_storage_t;
  __nv_fp8x4_storage_t fp8x4_storage_t;

  // CHECK: __hip_fp8_e5m2_fnuz fp8_e5m2;
  __nv_fp8_e5m2 fp8_e5m2;

  // CHECK: __hip_fp8x2_e5m2_fnuz fp8x2_e5m2;
  __nv_fp8x2_e5m2 fp8x2_e5m2;

  // CHECK: __hip_fp8_e4m3_fnuz fp8_e4m3;
  __nv_fp8_e4m3 fp8_e4m3;

  // CHECK: __hip_fp8x2_e4m3_fnuz fp8x2_e4m3;
  __nv_fp8x2_e4m3 fp8x2_e4m3;

  // CHECK: __hip_fp8x4_e4m3_fnuz fp8x4_e4m3;
  __nv_fp8x4_e4m3 fp8x4_e4m3;

  // CHECK: __hip_saturation_t saturation_t;
  // CHECK-NEXT: __hip_saturation_t NOSAT = __HIP_NOSAT;
  // CHECK-NEXT: __hip_saturation_t SATFINITE = __HIP_SATFINITE;
  __nv_saturation_t saturation_t;
  __nv_saturation_t NOSAT = __NV_NOSAT;
  __nv_saturation_t SATFINITE = __NV_SATFINITE;

  // CHECK: __hip_fp8_interpretation_t fp8_interpretation_t;
  // CHECK-NEXT: __hip_fp8_interpretation_t E4M3 = __HIP_E4M3_FNUZ;
  // CHECK-NEXT: __hip_fp8_interpretation_t E5M2 = __HIP_E5M2_FNUZ;
  __nv_fp8_interpretation_t fp8_interpretation_t;
  __nv_fp8_interpretation_t E4M3 = __NV_E4M3;
  __nv_fp8_interpretation_t E5M2 = __NV_E5M2;

  // CHECK: __hip_fp8x4_e5m2_fnuz fp8x4_e5m2;
  __nv_fp8x4_e5m2 fp8x4_e5m2;

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_double_to_fp8(const double x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_double_to_fp8(const double d, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8_storage_t = __hip_cvt_double_to_fp8(dx, saturation_t, fp8_interpretation_t);
  fp8_storage_t = __nv_cvt_double_to_fp8(dx, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_double2_to_fp8x2(const double2 x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_double2_to_fp8x2(const double2 d2, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8x2_storage_t = __hip_cvt_double2_to_fp8x2(d2, saturation_t, fp8_interpretation_t);
  fp8x2_storage_t = __nv_cvt_double2_to_fp8x2(d2, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_float_to_fp8(const float x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_float_to_fp8(const float f, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8_storage_t = __hip_cvt_float_to_fp8(fx, saturation_t, fp8_interpretation_t);
  fp8_storage_t = __nv_cvt_float_to_fp8(fx, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_float2_to_fp8x2(const float2 x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_float2_to_fp8x2(const float2 f2, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8x2_storage_t = __hip_cvt_float2_to_fp8x2(f2, saturation_t, fp8_interpretation_t);
  fp8x2_storage_t = __nv_cvt_float2_to_fp8x2(f2, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_halfraw_to_fp8(const __half_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_halfraw_to_fp8(const __half_raw x, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8_storage_t = __hip_cvt_halfraw_to_fp8(hrx, saturation_t, fp8_interpretation_t);
  fp8_storage_t = __nv_cvt_halfraw_to_fp8(hrx, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_halfraw2_to_fp8x2(const __half2_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_halfraw2_to_fp8x2(const __half2_raw x, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8x2_storage_t = __hip_cvt_halfraw2_to_fp8x2(h2rx, saturation_t, fp8_interpretation_t);
  fp8x2_storage_t = __nv_cvt_halfraw2_to_fp8x2(h2rx, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_bfloat16raw_to_fp8(const __nv_bfloat16_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_bfloat16raw_to_fp8(const __hip_bfloat16_raw hr, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8_storage_t = __hip_cvt_bfloat16raw_to_fp8(bf16r, saturation_t, fp8_interpretation_t);
  fp8_storage_t = __nv_cvt_bfloat16raw_to_fp8(bf16r, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_bfloat16raw2_to_fp8x2(const __nv_bfloat162_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_bfloat16raw2_to_fp8x2(const __hip_bfloat162_raw hr, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type);
  // CHECK: fp8x2_storage_t = __hip_cvt_bfloat16raw2_to_fp8x2(bf162r, saturation_t, fp8_interpretation_t);
  fp8x2_storage_t = __nv_cvt_bfloat16raw2_to_fp8x2(bf162r, saturation_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __half_raw __nv_cvt_fp8_to_halfraw(const __nv_fp8_storage_t x, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __half_raw __hip_cvt_fp8_to_halfraw(const __hip_fp8_storage_t x, const __hip_fp8_interpretation_t type);
  // CHECK: hrx = __hip_cvt_fp8_to_halfraw(fp8_storage_t, fp8_interpretation_t);
  hrx = __nv_cvt_fp8_to_halfraw(fp8_storage_t, fp8_interpretation_t);

  // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __half2_raw __nv_cvt_fp8x2_to_halfraw2(const __nv_fp8x2_storage_t x, const __nv_fp8_interpretation_t fp8_interpretation);
  // HIP: __FP8_HOST_DEVICE_STATIC__ __half2_raw __hip_cvt_fp8x2_to_halfraw2(const __hip_fp8x2_storage_t x, const __hip_fp8_interpretation_t type);
  // CHECK: h2rx = __hip_cvt_fp8x2_to_halfraw2(fp8x2_storage_t, fp8_interpretation_t);
  h2rx = __nv_cvt_fp8x2_to_halfraw2(fp8x2_storage_t, fp8_interpretation_t);
#endif

#if CUDA_VERSION >= 12020
  // CUDA: __CUDA_HOSTDEVICE_FP16_DECL__ __half2 make_half2(const __half x, const __half y);
  // HIP: __HOST_DEVICE__ __half2 make_half2(__half x, __half y);
  // CHECK: h2 = make_half2(hx, hy);
  h2 = make_half2(hx, hy);

  // CHECK: __half _INF_FP16 = HIPRT_INF_FP16;
  // CHECK-NEXT: __half _MAX_NORMAL_FP16 = HIPRT_MAX_NORMAL_FP16;
  // CHECK-NEXT: __half _MIN_DENORM_FP16 = HIPRT_MIN_DENORM_FP16;
  // CHECK-NEXT: __half _NAN_FP16 = HIPRT_NAN_FP16;
  // CHECK-NEXT: __half _NEG_ZERO_FP16 = HIPRT_NEG_ZERO_FP16;
  // CHECK-NEXT: __half _ONE_FP16 = HIPRT_ONE_FP16;
  // CHECK-NEXT: __half _ZERO_FP16 = HIPRT_ZERO_FP16;
  __half _INF_FP16 = CUDART_INF_FP16;
  __half _MAX_NORMAL_FP16 = CUDART_MAX_NORMAL_FP16;
  __half _MIN_DENORM_FP16 = CUDART_MIN_DENORM_FP16;
  __half _NAN_FP16 = CUDART_NAN_FP16;
  __half _NEG_ZERO_FP16 = CUDART_NEG_ZERO_FP16;
  __half _ONE_FP16 = CUDART_ONE_FP16;
  __half _ZERO_FP16 = CUDART_ZERO_FP16;
#endif

  return 0;
}
