#include <chrono>
#include <iostream>

#include "thrust/device_vector.h"
#include <thrust/sequence.h>
#include <thrust/transform.h>
#include "cuComplex.h"
#include "cufft.h"
#include "cuda.h"

#define NACC 256
#define NFPGAS 48
#define NCHAN_COARSE 336
#define NCHAN_FINE_IN 32
#define NCHAN_FINE_OUT 27
#define NACCUMULATE 128 
#define NPOL 2
#define NSAMPS 4
#define NCHAN_SUM 16
#define NSAMP_PER_PACKET 128
#define NCHAN_PER_PACKET 7
#define HEADLEN 64
#define NSAMPS_SUMMED 2


#define gpuErrchk(ans) { gpuAssert((ans), __FILE__, __LINE__); }

using std::cerr;
using std::cout;
using std::endl;

#define XSIZE 7
#define YSIZE 128
#define ZSIZE 48

inline void gpuAssert(cudaError_t code, const char *file, int line, bool abort=true) {
    if (code != cudaSuccess) {
        fprintf(stderr,"GPUassert: %s %s %d\n", cudaGetErrorString(code), file, line);
        if (abort) exit(code);
    }
}

/*void UnpackCpu(void) {
    #pragma unroll
    for (int chan = 0; chan < 7; chan++) {
        for (int sample = 0; sample < 128; sample++) {
            idx = (sample * 7 + chan) * BYTES_PER_WORD;    // get the  start of the word in the received data array
            idx2 = chan * 128 + sample + startidx;        // get the position in the buffer
            h_pol[idx2].x = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 7] | (data[HEADLEN + idx + 6] << 8)));
            h_pol[idx2].y = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 5] | (data[HEADLEN + idx + 4] << 8)));
            h_pol[idx2 + d_in_size / 2].x = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 3] | (data[HEADLEN + idx + 2] << 8)));
            h_pol[idx2 + d_in_size / 2].y = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 1] | (data[HEADLEN + idx + 0] << 8)));
        }
    }
} */

__global__ void unpack_original_tex(cudaTextureObject_t texObj, cufftComplex * __restrict__ out, unsigned int acc)
{

    int xidx = blockIdx.x * blockDim.x + threadIdx.x;
    int yidx = blockIdx.y * 128;
    int chanidx = threadIdx.x + blockIdx.y * 7;
    int skip;
    int2 word;

    for (int ac = 0; ac < acc; ac++) {
        skip = 336 * 128 * 2 * ac;
        for (int sample = 0; sample < YSIZE; sample++) {
            word = tex2D<int2>(texObj, xidx, yidx + ac * 48 * 128 + sample);
            out[skip + chanidx * YSIZE * 2 + sample].x = static_cast<float>(static_cast<short>(((word.y & 0xff000000) >> 24) | ((word.y & 0xff0000) >> 8)));
            out[skip + chanidx * YSIZE * 2 + sample].y = static_cast<float>(static_cast<short>(((word.y & 0xff00) >> 8) | ((word.y & 0xff) << 8)));
            out[skip + chanidx * YSIZE * 2 + YSIZE + sample].x = static_cast<float>(static_cast<short>(((word.x & 0xff000000) >> 24) | ((word.x & 0xff0000) >> 8)));
            out[skip + chanidx * YSIZE * 2 + YSIZE + sample].y = static_cast<float>(static_cast<short>(((word.x & 0xff00) >> 8) | ((word.x & 0xff) << 8)));
        }
    }
}

__global__ void unpack_new(const unsigned int *__restrict__ in, cufftComplex * __restrict__ out)
{

    int skip = 0;

    __shared__ unsigned int accblock[1792];
    
    int chan = 0;
    int time = 0;
    int line = 0;

    cufftComplex cpol;
    int polint;
    int2 tmp;

    int outskip = 0;

    for (int iacc = 0; iacc < NACCUMULATE; ++iacc) {
        // NOTE: This is skipping whole words as in will be cast to int2
        skip = iacc * NCHAN_COARSE * NSAMP_PER_PACKET + blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET;
       
        for (int ichunk = 0; ichunk < 7; ++ichunk) {
            line = ichunk * blockDim.x + threadIdx.x;
            chan = line % 7;
            time = line / 7;
            tmp = ((int2*)in)[skip + line];
            accblock[chan * NSAMP_PER_PACKET + time] = tmp.y;
            accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + chan * NSAMP_PER_PACKET + time] = tmp.x;
        }

        __syncthreads();
        
        skip = NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE;
        
        outskip = blockIdx.x * 7 * NSAMP_PER_PACKET * NACCUMULATE + iacc * NSAMP_PER_PACKET;

        for (chan = 0; chan < NCHAN_PER_PACKET; ++chan) {
            /*polaint = accblock[ichan * NSAMP_PER_PACKET + threadIdx.x];
            polbint = accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + ichan * NSAMP_PER_PACKET + threadIdx.x];
            pola.x = static_cast<float>(static_cast<short>( ((polaint & 0xff000000) >> 24) | ((polaint & 0xff0000) >> 8) ));
            pola.y = static_cast<float>(static_cast<short>( ((polaint & 0xff00) >> 8) | ((polaint & 0xff) << 8) )); 
	    
            polb.x = static_cast<float>(static_cast<short>( ((polbint & 0xff000000) >> 24) | ((polbint & 0xff0000) >> 8) ));
            polb.y = static_cast<float>(static_cast<short>( ((polbint & 0xff00) >> 8) | ((polbint & 0xff) << 8) )); 
            */

            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x];
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));
            out[outskip + threadIdx.x] = cpol;

            polint = accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + chan * NSAMP_PER_PACKET + threadIdx.x];
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));

            out[skip + outskip + threadIdx.x] = cpol;

            outskip += NSAMP_PER_PACKET * NACCUMULATE;

        }

    } 

}

__global__ void unpack_new_int2(int2 *__restrict__ in, cufftComplex *__restrict__ out) {

    int skip = 0;

    __shared__ int2 accblock[896];

    int chan = 0;
    int time = 0;
    int line = 0;

    cufftComplex cpol;
    int polint;

    int outskip = 0;

    for (int iacc = 0; iacc < NACCUMULATE; ++iacc) {
        // NOTE: This is skipping whole words as in will be cast to int2
        // skip = iacc * NCHAN_COARSE * NSAMP_PER_PACKET + blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET;

        skip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE + iacc * NCHAN_PER_PACKET * NSAMP_PER_PACKET;

        for (int ichunk = 0; ichunk < 7; ++ichunk) {
            line = ichunk * blockDim.x + threadIdx.x;
            chan = line % 7;
            time = line / 7;
            accblock[chan * NSAMP_PER_PACKET + time] = in[skip + line];
        }

        __syncthreads();

        skip = NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE;

        outskip = blockIdx.x * 7 * NSAMP_PER_PACKET * NACCUMULATE + iacc * NSAMP_PER_PACKET;

        for (chan = 0; chan < NCHAN_PER_PACKET; ++chan) {
            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x].y;
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));
            out[outskip + threadIdx.x] = cpol;

            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x].x;
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));

            out[skip + outskip + threadIdx.x] = cpol;

            outskip += NSAMP_PER_PACKET * NACCUMULATE;
        }
    }
}

__global__ void unpack_alt(const unsigned int *__restrict__ in, cufftComplex * __restrict__ out) {

    if (threadIdx.x == 1022 || threadIdx.x == 1023)
        return; 

    __shared__ unsigned int accblock[2044];

    int inskip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NPOL * NACCUMULATE;
    int outskip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE;

    int time = 0;
    int chan = 0;
    int line = 0;

    cufftComplex pola, polb;

    int polaint;
    int polbint;


    // NOTE: That will leave last 224 lines unprocessed
    // This can fit in 7 full warps of 32
    for (int iacc = 0; iacc < 113; ++iacc) {

        line = iacc * blockDim.y + threadIdx.y;

        if (line < NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE) {

        chan = threadIdx.y % 7;
        time = threadIdx.y / 7;        
 
        accblock[chan * 146 + time] = in[inskip + threadIdx.y * NPOL];
        accblock[NCHAN_PER_PACKET * 146 + chan * 146 + time] = in[inskip + threadIdx.y * NPOL + 1];
        inskip += 2044;
        
        __syncthreads();

        polbint = accblock[threadIdx.y];
        polaint = accblock[NCHAN_PER_PACKET * 146 + threadIdx.y];

        pola.x = static_cast<float>(static_cast<short>( ((polaint & 0xff000000) >> 24) | ((polaint & 0xff0000) >> 8) ));
        pola.y = static_cast<float>(static_cast<short>( ((polaint & 0xff00) >> 8) | ((polaint & 0xff) << 8) ));

        polb.x = static_cast<float>(static_cast<short>( ((polbint & 0xff000000) >> 24) | ((polbint & 0xff0000) >> 8) ));
        polb.y = static_cast<float>(static_cast<short>( ((polbint & 0xff00) >> 8) | ((polbint & 0xff) << 8) ));

        chan = threadIdx.y / 146;
        time = threadIdx.y % 146; 

        out[outskip + chan * NSAMP_PER_PACKET * NACCUMULATE + time] = pola;
        out[NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE + outskip + chan * NSAMP_PER_PACKET * NACCUMULATE + time] = polb;
        outskip += 146;

        }
    }
}

__global__ void powertimefreq_new_hardcoded(
  cuComplex* __restrict__ in,
  float* __restrict__ out)
{

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE];

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;

  if (lane_idx >= NCHAN_FINE_OUT)
    return;

  int offset = blockIdx.x * NCHAN_COARSE * NPOL * NSAMPS * NCHAN_FINE_IN;
  int out_offset = blockIdx.x * NCHAN_COARSE * NCHAN_FINE_OUT / NCHAN_SUM;

  for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += warpSize)
    {
      float real = 0.0f;
      float imag = 0.0f;
      int coarse_chan_offset = offset + coarse_chan_idx * NPOL * NSAMPS * NCHAN_FINE_IN;

      for (int pol=0; pol<NPOL; ++pol)
      {
        int pol_offset = coarse_chan_offset + pol * NSAMPS * NCHAN_FINE_IN;
        for (int samp=0; samp<NSAMPS; ++samp)
        {
          int samp_offset = pol_offset + samp * NCHAN_FINE_IN;
          cuComplex val = in[samp_offset + lane_idx];
          real += val.x * val.x;
          imag += val.y * val.y;
        }
      }
      int output_idx = coarse_chan_idx * NCHAN_FINE_OUT + lane_idx;

      freq_sum_buffer[output_idx] = real+imag; //scaling goes here
      __syncthreads();

      for (int start_chan=threadIdx.x; start_chan<NCHAN_FINE_OUT*NCHAN_COARSE; start_chan*=blockDim.x)
      {
        if ((start_chan+NCHAN_SUM) > NCHAN_FINE_OUT*NCHAN_COARSE)
          return;
        float sum = freq_sum_buffer[start_chan];
        for (int ii=0; ii<4; ++ii)
        {
          sum += freq_sum_buffer[start_chan + (1<<ii)];
          __syncthreads();
        }
        out[out_offset+start_chan/NCHAN_SUM];
      }
    }
  return;
}

__global__ void DetectScrunchKernel(cuComplex* __restrict__ in, float* __restrict__ out, short nchans)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  cuComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }
        out[saveoff + threadIdx.x] = sum;
    }

    return;
}

__global__ void DetectScrunchScaleKernel(cuComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  cuComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }
        
        scaled = __float2int_ru((sum - means[threadIdx.x]) * scales[threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255;
        } else if (scaled < 0) {
            scaled = 0;
        } 
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + threadIdx.x] = (unsigned char)scaled;
    }

    return;
}

__global__ void DetectScrunchScaleRevKernel(cuComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;
  
  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx; 
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  cuComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }

        scaled = __float2int_ru((sum - means[566 - threadIdx.x]) * scales[566 - threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255; 
        } else if (scaled < 0) {
            scaled = 0;
        } 
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + 566 - threadIdx.x] = (unsigned char)scaled;
    }

    return;
}

__global__ void DetectScrunchScaleTruncKernel(cuComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio

  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  cuComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    int skipbottom = 28 * NCHAN_SUM;
    if (threadIdx.x < 512) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[skipbottom + chan_idx];
        }

        scaled = __float2int_ru((sum - means[511 - threadIdx.x]) * scales[511 - threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255;
        } else if (scaled < 0) {
            scaled = 0;
        }
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + 511 - threadIdx.x] = (unsigned char)scaled;
    }

    return;
}


__global__ void GetPowerAddTimeKernel(cufftComplex* __restrict__ in, float* __restrict__ out, unsigned int jump, unsigned int factort, unsigned int acc) {

    int idx1, idx2;
    int outidx;
    int skip1, skip2;
    float power1, power2;

    for (int iac = 0; iac < acc; iac++) {
        skip1 = iac * 336 * 128 * 2;
        skip2 = iac * 336 * 27;
            for (int ichan = 0; ichan < 7; ichan++) {
            outidx = skip2 + 7 * 27 * blockIdx.x + ichan * 27 + threadIdx.x;
            out[outidx] = (float)0.0;
            out[outidx + jump] = (float)0.0;
            out[outidx + 2 * jump] = (float)0.0;
            out[outidx + 3 * jump] = (float)0.0;

            idx1 = skip1 + 256 * (blockIdx.x * 7 + ichan);

            for (int itime = 0; itime < factort; itime++) {
                idx2 = threadIdx.x + itime * 32;
                power1 = (in[idx1 + idx2].x * in[idx1 + idx2].x + in[idx1 + idx2].y * in[idx1 + idx2].y);
                power2 = (in[idx1 + 128 + idx2].x * in[idx1 + 128 + idx2].x + in[idx1 + 128 + idx2].y * in[idx1 + 128 + idx2].y);
                out[outidx] += (power1 + power2);
                out[outidx + jump] += (power1 - power2);
                out[outidx + 2 * jump] += (2 * (in[idx1 + idx2].x * in[idx1 + 128 + idx2].x + in[idx1 + idx2].y * in[idx1 + 128 + idx2].y));
                out[outidx + 3 * jump] += (2 * (in[idx1 + idx2].x * in[idx1 + 128 + idx2].y - in[idx1 + idx2].y * in[idx1 + 128 + idx2].x));
            }
        }
    }
}

__global__ void GetScaleFactorsKernel(float *indata, float *base, float *stdev, float *factors, int nchans, int processed) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff * factors[isamp + 1];
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));

}

__global__ void GetScaleFactorsDivKernel(float *indata, float *base, float *stdev, int nchans, int processed) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff / (isamp + 1);
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));

}

__global__ void GetScaleFactorsDoubleKernel(float *indata, float *base, float *stdev, int nchans) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
/*
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff / (isamp + 1);
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));
*/
    float sum = indata[threadIdx.x];

    for (int isamp = 1; isamp < 2 * NACCUMULATE; ++isamp) {
        sum += indata[isamp * nchans + threadIdx.x];
    }

    float mean = sum / (float)(2.0 * NACCUMULATE);

    base[threadIdx.x] = mean;

    float sumsq = 0.0f;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        diff = indata[isamp * nchans + threadIdx.x] - mean;
        sumsq += diff * diff;   
    }

    stdev[threadIdx.x] = sqrt(sumsq / (float)(NACCUMULATE - 1.0));
}


struct FactorFunctor {
    __host__ __device__ float operator()(float val) {
        return val != 0.0f ? 1.0f/val : val;
    }
};

int main(int argc, char* argv[]) {

    unsigned char *rawbuffer = new unsigned char[7168 * NFPGAS * NACC];

    thrust::device_vector<unsigned char> rawdata(7168 * NFPGAS * NACCUMULATE);
    // NOTE: 336 coarse channels * 32 fine channels * 4 time samples * 2 polarisations
    thrust::device_vector<cuComplex> input(336*32*4*2*NACCUMULATE);
    // NOTE: 336 coarse channels * 27 fine channels
    thrust::device_vector<float> output(336*27*NACCUMULATE);

    thrust::device_vector<float> means(567);
    thrust::device_vector<float> scales(567);

    thrust::device_vector<float> factors(NACCUMULATE * 2);
    thrust::sequence(factors.begin(), factors.end());
    thrust::transform(factors.begin(), factors.end(), factors.begin(), FactorFunctor());

    // NOTE: Benchmarking the unpacker kernel

    cudaArray *rawarray;
    cudaChannelFormatDesc cdesc;
    cdesc = cudaCreateChannelDesc<int2>();
    cudaMallocArray(&rawarray, &cdesc, 7, 48 * 128 * NACCUMULATE);

    cudaResourceDesc rdesc;
    memset(&rdesc, 0, sizeof(cudaResourceDesc));
    rdesc.resType = cudaResourceTypeArray;
    rdesc.res.array.array = rawarray;

    cudaTextureDesc tdesc;
    memset(&tdesc, 0, sizeof(cudaTextureDesc));
    tdesc.addressMode[0] = cudaAddressModeClamp;
    tdesc.filterMode = cudaFilterModePoint;
    tdesc.readMode = cudaReadModeElementType;

    cudaTextureObject_t texObj = 0;
    cudaCreateTextureObject(&texObj, &rdesc, &tdesc, NULL);

    cudaMemcpyToArray(rawarray, 0, 0, rawbuffer, 7168 * 48 * NACCUMULATE * sizeof(unsigned char), cudaMemcpyHostToDevice);

    dim3 rearrange_b(1,48,1);
    dim3 rearrange_t(7,1,1);

    dim3 unpackt(2, 128, 1);
    dim3 unpacka(1, 1024, 1);
    dim3 unpackb(48, 2, 1);

    // ##################################
    // ### UNPACK KERNEL BENCHMARKING ###
    // ##################################
 
    std::chrono::time_point<std::chrono::system_clock> unpackstart, unpackend;
    std::chrono::duration<double> unpackelapsed;

    unpackstart = std::chrono::system_clock::now();
    // NOTE: Unpacking with texture memory
    for (int ii = 0; ii < 32; ++ii) {
        unpack_original_tex<<<rearrange_b, rearrange_t, 0>>>(texObj, thrust::raw_pointer_cast(input.data()), NACCUMULATE);
        gpuErrchk(cudaDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with texture memory: " << unpackelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Unpacking with shared memory
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_new<<<48, 128, 0>>>(reinterpret_cast<unsigned int*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));       
        gpuErrchk(cudaDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory: " << unpackelapsed.count() / 32.0 << "s" << endl; 

    // NOTE: Unpacking with shared memory with cast to int2 in the function call
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_new_int2<<<48, 128, 0>>>(reinterpret_cast<int2*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));
        gpuErrchk(cudaDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory with cast to int2 in the function call: " << unpackelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Unpacking with shared memory with the alternative incoming buffer arrangement
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_alt<<<48, unpacka, 0>>>(reinterpret_cast<unsigned int*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));
        gpuErrchk(cudaDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory with the alternative incoming buffer arrangement: " << unpackelapsed.count() / 32.0 << "s" << endl;

    std::chrono::time_point<std::chrono::system_clock> powerstart, powerend;
    std::chrono::duration<double> powerelapsed;

    // #################################
    // ### POWER KERNEL BENCHMARKING ###
    // #################################

    // NOTE: Unoptimised power kernel with time averaging only
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetPowerAddTimeKernel<<<48, 27, 0>>>(thrust::raw_pointer_cast(input.data()), thrust::raw_pointer_cast(output.data()), 0, NSAMPS, NACCUMULATE);
        gpuErrchk(cudaDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Unoptimised power kernel: " << powerelapsed.count() / 32.0 << "s" << endl;
    
    // NOTE: Optimised power kernel with shared memory with time and frequency averaging
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567);
        gpuErrchk(cudaDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(cudaDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling and reversed frequency
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleRevKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(cudaDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling and reversed frequency: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling truncated and reversed frequency
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleTruncKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 512,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(cudaDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling, truncated and reversed frequency: " << powerelapsed.count() / 32.0 << "s" << endl;


    // #################################
    // ### SCALE KERNEL BENCHMARKING ###
    // #################################

    std::chrono::time_point<std::chrono::system_clock> scalestart, scaleend;
    std::chrono::duration<double> scaleelapsed;

    
    // NOTE: Double-pass scaling factors kernel
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsDoubleKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()), 512);
        gpuErrchk(cudaDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Double pass scaling factors kernel with division: " << scaleelapsed.count() / 32.0 << "s" << endl;


    // NOTE: Unoptimised scaling factors kernel with division
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsDivKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()),
                                                                    512, 0);
        gpuErrchk(cudaDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Unoptimised scaling factors kernel with division: " << scaleelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised scaling factors kernel 
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()),
                                                                    thrust::raw_pointer_cast(factors.data()), 512, 0);
        gpuErrchk(cudaDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Optimised scaling factors kernel: " << scaleelapsed.count() / 32.0 << "s" << endl;



}


	.file	"tmpxft_0021bfa2_00000000-6_benchmarks.cudafe1.cpp"
	.text
#APP
	.globl _ZSt21ios_base_library_initv

#NO_APP
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi
	.type	_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi, @function
_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi:
.LFB8324:
	.cfi_startproc
	endbr64
	movq	%rdi, %rdx
	movl	%esi, %eax
	ret
	.cfi_endproc
.LFE8324:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi, .-_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi
	.type	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi, @function
_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi:
.LFB8326:
	.cfi_startproc
	endbr64
	xorl	%eax, %eax
	cmpq	%rdi, 8(%rsi)
	jne	.L2
	cmpl	%edx, (%rsi)
	sete	%al
.L2:
	ret
	.cfi_endproc
.LFE8326:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi, .-_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv.str1.1,"aMS",@progbits,1
.LC1:
	.string	"generic"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv:
.LFB8336:
	.cfi_startproc
	endbr64
	leaq	.LC1(%rip), %rax
	ret
	.cfi_endproc
.LFE8336:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv.str1.1,"aMS",@progbits,1
.LC2:
	.string	"system"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv:
.LFB8341:
	.cfi_startproc
	endbr64
	leaq	.LC2(%rip), %rax
	ret
	.cfi_endproc
.LFE8341:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev:
.LFB8346:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE8346:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD1Ev,_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD2Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev:
.LFB8351:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE8351:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD1Ev,_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD2Ev
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE
	.type	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE, @function
_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE:
.LFB8325:
	.cfi_startproc
	endbr64
	movq	(%rdi), %rax
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdx, %rbx
	call	*24(%rax)
	movq	%rdx, %rcx
	xorl	%edx, %edx
	cmpq	%rcx, 8(%rbx)
	jne	.L11
	cmpl	%eax, (%rbx)
	sete	%dl
.L11:
	movl	%edx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8325:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE, .-_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv.str1.1,"aMS",@progbits,1
.LC3:
	.string	"cuda"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv
	.type	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv, @function
_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv:
.LFB8401:
	.cfi_startproc
	endbr64
	leaq	.LC3(%rip), %rax
	ret
	.cfi_endproc
.LFE8401:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv, .-_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev:
.LFB8406:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE8406:
	.size	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD1Ev,_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD2Ev
	.text
	.type	nvtxDomainRangePop, @function
nvtxDomainRangePop:
.LFB8558:
	.cfi_startproc
	movq	424+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L18
	jmp	*%rax
.L18:
	movl	$-2, %eax
	ret
	.cfi_endproc
.LFE8558:
	.size	nvtxDomainRangePop, .-nvtxDomainRangePop
	.section	.text.nvtxEtiGetModuleFunctionTable_v3,"axG",@progbits,nvtxEtiGetModuleFunctionTable_v3,comdat
	.weak	nvtxEtiGetModuleFunctionTable_v3
	.hidden	nvtxEtiGetModuleFunctionTable_v3
	.type	nvtxEtiGetModuleFunctionTable_v3, @function
nvtxEtiGetModuleFunctionTable_v3:
.LFB8569:
	.cfi_startproc
	endbr64
	decl	%edi
	xorl	%eax, %eax
	cmpl	$5, %edi
	ja	.L19
	leaq	.L22(%rip), %rcx
	movslq	(%rcx,%rdi,4), %rax
	addq	%rcx, %rax
	notrack jmp	*%rax
	.section	.rodata.nvtxEtiGetModuleFunctionTable_v3,"aG",@progbits,nvtxEtiGetModuleFunctionTable_v3,comdat
	.align 4
	.align 4
.L22:
	.long	.L27-.L22
	.long	.L32-.L22
	.long	.L25-.L22
	.long	.L24-.L22
	.long	.L23-.L22
	.long	.L21-.L22
	.section	.text.nvtxEtiGetModuleFunctionTable_v3,"axG",@progbits,nvtxEtiGetModuleFunctionTable_v3,comdat
.L27:
	leaq	560+nvtxGlobals_v3(%rip), %rcx
	jmp	.L36
.L25:
	leaq	776+nvtxGlobals_v3(%rip), %rcx
	movl	$128, %eax
	jmp	.L26
.L24:
	leaq	904+nvtxGlobals_v3(%rip), %rcx
	jmp	.L37
.L23:
	leaq	968+nvtxGlobals_v3(%rip), %rcx
.L36:
	movl	$136, %eax
	jmp	.L26
.L21:
	leaq	1104+nvtxGlobals_v3(%rip), %rcx
.L37:
	movl	$64, %eax
	jmp	.L26
.L32:
	leaq	696+nvtxGlobals_v3(%rip), %rcx
	movl	$80, %eax
.L26:
	testq	%rdx, %rdx
	je	.L28
	shrl	$3, %eax
	decl	%eax
	movl	%eax, (%rdx)
.L28:
	testq	%rsi, %rsi
	jne	.L29
.L30:
	movl	$1, %eax
	ret
.L29:
	movq	%rcx, (%rsi)
	jmp	.L30
.L19:
	ret
	.cfi_endproc
.LFE8569:
	.size	nvtxEtiGetModuleFunctionTable_v3, .-nvtxEtiGetModuleFunctionTable_v3
	.section	.text.nvtxGetExportTable_v3,"axG",@progbits,nvtxGetExportTable_v3,comdat
	.weak	nvtxGetExportTable_v3
	.hidden	nvtxGetExportTable_v3
	.type	nvtxGetExportTable_v3, @function
nvtxGetExportTable_v3:
.LFB8570:
	.cfi_startproc
	endbr64
	leaq	8+nvtxGlobals_v3(%rip), %rax
	cmpl	$1, %edi
	je	.L38
	cmpl	$3, %edi
	leaq	16(%rax), %rax
	movl	$0, %edx
	cmovne	%rdx, %rax
.L38:
	ret
	.cfi_endproc
.LFE8570:
	.size	nvtxGetExportTable_v3, .-nvtxGetExportTable_v3
	.section	.text.nvtxEtiSetInjectionNvtxVersion_v3,"axG",@progbits,nvtxEtiSetInjectionNvtxVersion_v3,comdat
	.weak	nvtxEtiSetInjectionNvtxVersion_v3
	.hidden	nvtxEtiSetInjectionNvtxVersion_v3
	.type	nvtxEtiSetInjectionNvtxVersion_v3, @function
nvtxEtiSetInjectionNvtxVersion_v3:
.LFB8571:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE8571:
	.size	nvtxEtiSetInjectionNvtxVersion_v3, .-nvtxEtiSetInjectionNvtxVersion_v3
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv:
.LFB9641:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE9641:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev, @function
_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev:
.LFB12357:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE12357:
	.size	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev, .-_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED1Ev,_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED2Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev:
.LFB12492:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE12492:
	.size	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED1Ev,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED2Ev
	.section	.text._ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_
	.type	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_, @function
_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_:
.LFB12792:
	.cfi_startproc
	endbr64
	cmpq	%rdi, %rsi
	sete	%al
	ret
	.cfi_endproc
.LFE12792:
	.size	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_, .-_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_
	.section	.text._ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_
	.type	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_, @function
_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_:
.LFB12793:
	.cfi_startproc
	endbr64
	cmpq	%rdi, %rsi
	sete	%al
	ret
	.cfi_endproc
.LFE12793:
	.size	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_, .-_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev:
.LFB8348:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE8348:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev:
.LFB8353:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE8353:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev:
.LFB8408:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE8408:
	.size	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev, @function
_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev:
.LFB12359:
	.cfi_startproc
	endbr64
	movl	$16, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE12359:
	.size	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev, .-_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev:
.LFB12494:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE12494:
	.size	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev
	.section	.text._ZN4cuda3__410cuda_errorD2Ev,"axG",@progbits,_ZN4cuda3__410cuda_errorD5Ev,comdat
	.align 2
	.weak	_ZN4cuda3__410cuda_errorD2Ev
	.type	_ZN4cuda3__410cuda_errorD2Ev, @function
_ZN4cuda3__410cuda_errorD2Ev:
.LFB6852:
	.cfi_startproc
	endbr64
	leaq	16+_ZTVN4cuda3__410cuda_errorE(%rip), %rax
	movq	%rax, (%rdi)
	jmp	_ZNSt13runtime_errorD2Ev@PLT
	.cfi_endproc
.LFE6852:
	.size	_ZN4cuda3__410cuda_errorD2Ev, .-_ZN4cuda3__410cuda_errorD2Ev
	.weak	_ZN4cuda3__410cuda_errorD1Ev
	.set	_ZN4cuda3__410cuda_errorD1Ev,_ZN4cuda3__410cuda_errorD2Ev
	.section	.text._ZN4cuda3__410cuda_errorD0Ev,"axG",@progbits,_ZN4cuda3__410cuda_errorD5Ev,comdat
	.align 2
	.weak	_ZN4cuda3__410cuda_errorD0Ev
	.type	_ZN4cuda3__410cuda_errorD0Ev, @function
_ZN4cuda3__410cuda_errorD0Ev:
.LFB6854:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	_ZN4cuda3__410cuda_errorD1Ev
	movq	8(%rsp), %rdi
	movl	$16, %esi
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE6854:
	.size	_ZN4cuda3__410cuda_errorD0Ev, .-_ZN4cuda3__410cuda_errorD0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system12system_errorD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev:
.LFB8410:
	.cfi_startproc
	endbr64
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE(%rip), %rax
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	leaq	32(%rdi), %rdi
	movq	%rax, -32(%rdi)
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt13runtime_errorD2Ev@PLT
	.cfi_endproc
.LFE8410:
	.size	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD1Ev,_ZN6thrust20THRUST_200700_890_NS6system12system_errorD2Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system12system_errorD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev:
.LFB8412:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD1Ev
	movq	8(%rsp), %rdi
	movl	$64, %esi
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE8412:
	.size	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev:
.LFB9638:
	.cfi_startproc
	endbr64
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rax
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	leaq	8(%rdi), %rdi
	movq	%rax, -8(%rdi)
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt9bad_allocD2Ev@PLT
	.cfi_endproc
.LFE9638:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD2Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev:
.LFB9640:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev
	movq	8(%rsp), %rdi
	movl	$40, %esi
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE9640:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev
	.text
	.type	_ZL26__cudaUnregisterBinaryUtilv, @function
_ZL26__cudaUnregisterBinaryUtilv:
.LFB11223:
	.cfi_startproc
	endbr64
	movq	_ZL20__cudaFatCubinHandle(%rip), %rdi
	jmp	__cudaUnregisterFatBinary@PLT
	.cfi_endproc
.LFE11223:
	.size	_ZL26__cudaUnregisterBinaryUtilv, .-_ZL26__cudaUnregisterBinaryUtilv
	.type	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0, @function
_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0:
.LFB12813:
	.cfi_startproc
	jmp	cudaLaunchKernel@PLT
	.cfi_endproc
.LFE12813:
	.size	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0, .-_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	.section	.text._ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv,"axG",@progbits,_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv,comdat
	.weak	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv
	.hidden	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv
	.type	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv, @function
_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv:
.LFB11693:
	.cfi_startproc
	endbr64
	subq	$72, %rsp
	.cfi_def_cfa_offset 80
	movq	%fs:40, %rax
	movq	%rax, 56(%rsp)
	movabsq	$4294967297, %rax
	leaq	16(%rsp), %rcx
	leaq	8(%rsp), %rdx
	movl	$1, 32(%rsp)
	leaq	36(%rsp), %rsi
	leaq	24(%rsp), %rdi
	movl	$1, 44(%rsp)
	movq	%rax, 24(%rsp)
	movq	%rax, 36(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L67
	pushq	16(%rsp)
	.cfi_def_cfa_offset 88
	leaq	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv(%rip), %rdi
	pushq	16(%rsp)
	.cfi_def_cfa_offset 96
	movq	52(%rsp), %rcx
	movl	60(%rsp), %r8d
	movq	40(%rsp), %rsi
	movl	48(%rsp), %edx
	leaq	64(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 88
	popq	%rdx
	.cfi_def_cfa_offset 80
.L67:
	movq	56(%rsp), %rax
	subq	%fs:40, %rax
	je	.L69
	call	__stack_chk_fail@PLT
.L69:
	addq	$72, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11693:
	.size	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv, .-_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv
	.text
	.align 2
	.type	_ZNSolsEPFRSoS_E.isra.0, @function
_ZNSolsEPFRSoS_E.isra.0:
.LFB12814:
	.cfi_startproc
	jmp	*%rsi
	.cfi_endproc
.LFE12814:
	.size	_ZNSolsEPFRSoS_E.isra.0, .-_ZNSolsEPFRSoS_E.isra.0
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_:
.LFB11783:
	.cfi_startproc
	endbr64
	subq	$88, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
	leaq	8(%rsp), %rax
	movq	%rdi, 8(%rsp)
	leaq	24(%rsp), %rcx
	movq	%rax, 56(%rsp)
	leaq	96(%rsp), %rax
	leaq	16(%rsp), %rdx
	movq	%rax, 64(%rsp)
	leaq	44(%rsp), %rsi
	movabsq	$4294967297, %rax
	leaq	32(%rsp), %rdi
	movq	%rax, 32(%rsp)
	movl	$1, 40(%rsp)
	movq	%rax, 44(%rsp)
	movl	$1, 52(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L72
	pushq	24(%rsp)
	.cfi_def_cfa_offset 104
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_(%rip), %rdi
	pushq	24(%rsp)
	.cfi_def_cfa_offset 112
	movq	60(%rsp), %rcx
	movl	68(%rsp), %r8d
	movq	48(%rsp), %rsi
	movl	56(%rsp), %edx
	leaq	72(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 104
	popq	%rdx
	.cfi_def_cfa_offset 96
.L72:
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L74
	call	__stack_chk_fail@PLT
.L74:
	addq	$88, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11783:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_:
.LFB11781:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movq	%rsi, (%rsp)
	leaq	40(%rsp), %rcx
	leaq	32(%rsp), %rdx
	movq	%xmm0, 8(%rsp)
	leaq	60(%rsp), %rsi
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rdi
	movq	%rax, 72(%rsp)
	movq	%rsp, %rax
	movq	%rax, 80(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 48(%rsp)
	movl	$1, 56(%rsp)
	movq	%rax, 60(%rsp)
	movl	$1, 68(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L76
	pushq	40(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_(%rip), %rdi
	pushq	40(%rsp)
	.cfi_def_cfa_offset 128
	movq	76(%rsp), %rcx
	movl	84(%rsp), %r8d
	movq	64(%rsp), %rsi
	movl	72(%rsp), %edx
	leaq	88(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 120
	popq	%rdx
	.cfi_def_cfa_offset 112
.L76:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L78
	call	__stack_chk_fail@PLT
.L78:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11781:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_:
.LFB11779:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movd	%xmm0, %eax
	movq	%rsi, (%rsp)
	leaq	40(%rsp), %rcx
	leaq	32(%rsp), %rdx
	movq	%rax, 8(%rsp)
	leaq	60(%rsp), %rsi
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rdi
	movq	%rax, 72(%rsp)
	movq	%rsp, %rax
	movq	%rax, 80(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 48(%rsp)
	movl	$1, 56(%rsp)
	movq	%rax, 60(%rsp)
	movl	$1, 68(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L80
	pushq	40(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_(%rip), %rdi
	pushq	40(%rsp)
	.cfi_def_cfa_offset 128
	movq	76(%rsp), %rcx
	movl	84(%rsp), %r8d
	movq	64(%rsp), %rsi
	movl	72(%rsp), %edx
	leaq	88(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 120
	popq	%rdx
	.cfi_def_cfa_offset 112
.L80:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L82
	call	__stack_chk_fail@PLT
.L82:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11779:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_:
.LFB11777:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movq	%rsi, (%rsp)
	leaq	40(%rsp), %rcx
	leaq	32(%rsp), %rdx
	movq	%xmm0, 8(%rsp)
	leaq	60(%rsp), %rsi
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rdi
	movq	%rax, 72(%rsp)
	movq	%rsp, %rax
	movq	%rax, 80(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 48(%rsp)
	movl	$1, 56(%rsp)
	movq	%rax, 60(%rsp)
	movl	$1, 68(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L84
	pushq	40(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_(%rip), %rdi
	pushq	40(%rsp)
	.cfi_def_cfa_offset 128
	movq	76(%rsp), %rcx
	movl	84(%rsp), %r8d
	movq	64(%rsp), %rsi
	movl	72(%rsp), %edx
	leaq	88(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 120
	popq	%rdx
	.cfi_def_cfa_offset 112
.L84:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L86
	call	__stack_chk_fail@PLT
.L86:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11777:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_:
.LFB11775:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movq	%rsi, (%rsp)
	leaq	40(%rsp), %rcx
	leaq	60(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	32(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rdi
	movq	%rax, 72(%rsp)
	movq	%rsp, %rax
	movq	%rax, 80(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 48(%rsp)
	movl	$1, 56(%rsp)
	movq	%rax, 60(%rsp)
	movl	$1, 68(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L88
	pushq	40(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_(%rip), %rdi
	pushq	40(%rsp)
	.cfi_def_cfa_offset 128
	movq	76(%rsp), %rcx
	movl	84(%rsp), %r8d
	movq	64(%rsp), %rsi
	movl	72(%rsp), %edx
	leaq	88(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 120
	popq	%rdx
	.cfi_def_cfa_offset 112
.L88:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L90
	call	__stack_chk_fail@PLT
.L90:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11775:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv.str1.1,"aMS",@progbits,1
.LC4:
	.string	": "
.LC5:
	.string	"basic_string::append"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv
	.type	_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv, @function
_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv:
.LFB8433:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA8433
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	movq	%rdi, %rbx
	subq	$56, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 40(%rsp)
	xorl	%eax, %eax
	cmpq	$0, 40(%rdi)
	jne	.L94
	call	_ZNKSt13runtime_error4whatEv@PLT
	leaq	32(%rbx), %r13
	movq	%rax, %rdi
	movq	%rax, %rbp
	call	strlen@PLT
	movq	40(%rbx), %rdx
	movq	%rbp, %rcx
	xorl	%esi, %esi
	movq	%rax, %r8
	movq	%r13, %rdi
.LEHB0:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm@PLT
	cmpl	$0, 16(%rbx)
	je	.L94
	cmpq	$0, 40(%rbx)
	jne	.L96
.L98:
	movq	24(%rbx), %rsi
	leaq	8(%rsp), %r12
	movl	16(%rbx), %edx
	movq	%r12, %rdi
	movq	(%rsi), %rax
	call	*48(%rax)
	jmp	.L110
.L96:
	leaq	.LC4(%rip), %rsi
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE0:
	jmp	.L98
.L110:
	movq	16(%rsp), %rdx
	movq	8(%rsp), %rsi
	movabsq	$4611686018427387903, %rax
	subq	40(%rbx), %rax
	cmpq	%rdx, %rax
	jnb	.L99
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L109
	leaq	.LC5(%rip), %rdi
.LEHB1:
	call	_ZSt20__throw_length_errorPKc@PLT
.L99:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm@PLT
.LEHE1:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
.L94:
	movq	32(%rbx), %rbx
	jmp	.L92
.L106:
	endbr64
	movq	%rax, %rbp
.L101:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbp, %rdi
	jmp	.L102
.L105:
	endbr64
	movq	%rax, %rdi
.L102:
	call	__cxa_begin_catch@PLT
	movq	%rbx, %rdi
	call	_ZNKSt13runtime_error4whatEv@PLT
	movq	%rax, %rbx
	call	__cxa_end_catch@PLT
.L92:
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	je	.L104
.L109:
	call	__stack_chk_fail@PLT
.L104:
	addq	$56, %rsp
	.cfi_def_cfa_offset 40
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8433:
	.globl	__gxx_personality_v0
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,comdat
	.align 4
.LLSDA8433:
	.byte	0xff
	.byte	0x9b
	.uleb128 .LLSDATT8433-.LLSDATTD8433
.LLSDATTD8433:
	.byte	0x1
	.uleb128 .LLSDACSE8433-.LLSDACSB8433
.LLSDACSB8433:
	.uleb128 .LEHB0-.LFB8433
	.uleb128 .LEHE0-.LEHB0
	.uleb128 .L105-.LFB8433
	.uleb128 0x1
	.uleb128 .LEHB1-.LFB8433
	.uleb128 .LEHE1-.LEHB1
	.uleb128 .L106-.LFB8433
	.uleb128 0x3
.LLSDACSE8433:
	.byte	0x1
	.byte	0
	.byte	0
	.byte	0x7d
	.align 4
	.long	0

.LLSDATT8433:
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,comdat
	.size	_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv, .-_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv
	.section	.rodata._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc.str1.1,"aMS",@progbits,1
.LC6:
	.string	"cudaError %d: %s"
	.section	.text.unlikely._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,"axG",@progbits,_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,comdat
	.weak	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
	.hidden	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
	.type	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc, @function
_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc:
.LFB6850:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA6850
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	movq	%rsi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	subq	$288, %rsp
	.cfi_def_cfa_offset 320
	movl	%edi, 12(%rsp)
	movl	$16, %edi
	leaq	24(%rsp), %r12
	movq	%fs:40, %rax
	movq	%rax, 280(%rsp)
	xorl	%eax, %eax
	call	__cxa_allocate_exception@PLT
	leaq	24(%rsp), %rdi
	movl	$64, %ecx
	leaq	.LC6(%rip), %r8
	movq	%rax, %rbx
	xorl	%eax, %eax
	movl	$256, %esi
	rep stosl
	pushq	%rdx
	.cfi_def_cfa_offset 328
	movl	$256, %ecx
	movl	$2, %edx
	pushq	%rbp
	.cfi_def_cfa_offset 336
	movl	28(%rsp), %r9d
	movq	%r12, %rdi
	call	__snprintf_chk@PLT
	popq	%rcx
	.cfi_def_cfa_offset 328
	movq	%rbx, %rdi
	popq	%rsi
	.cfi_def_cfa_offset 320
	movq	%r12, %rsi
	call	_ZNSt13runtime_errorC2EPKc@PLT
	leaq	16+_ZTVN4cuda3__410cuda_errorE(%rip), %rax
	movq	%rax, (%rbx)
	movq	280(%rsp), %rax
	subq	%fs:40, %rax
	je	.L112
	call	__stack_chk_fail@PLT
.L112:
	leaq	_ZN4cuda3__410cuda_errorD1Ev(%rip), %rdx
	leaq	_ZTIN4cuda3__410cuda_errorE(%rip), %rsi
	movq	%rbx, %rdi
.LEHB2:
	call	__cxa_throw@PLT
.LEHE2:
	.cfi_endproc
.LFE6850:
	.section	.gcc_except_table._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,"aG",@progbits,_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,comdat
.LLSDA6850:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE6850-.LLSDACSB6850
.LLSDACSB6850:
	.uleb128 .LEHB2-.LFB6850
	.uleb128 .LEHE2-.LEHB2
	.uleb128 0
	.uleb128 0
.LLSDACSE6850:
	.section	.text.unlikely._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,"axG",@progbits,_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,comdat
	.size	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc, .-_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
	.section	.rodata._ZN4cuda3__423__ensure_current_deviceD2Ev.str1.1,"aMS",@progbits,1
.LC7:
	.string	"Failed to set device"
	.section	.text._ZN4cuda3__423__ensure_current_deviceD2Ev,"axG",@progbits,_ZN4cuda3__423__ensure_current_deviceD5Ev,comdat
	.align 2
	.weak	_ZN4cuda3__423__ensure_current_deviceD2Ev
	.type	_ZN4cuda3__423__ensure_current_deviceD2Ev, @function
_ZN4cuda3__423__ensure_current_deviceD2Ev:
.LFB6859:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA6859
	endbr64
	movl	4(%rdi), %eax
	cmpl	(%rdi), %eax
	je	.L121
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%eax, %edi
	call	cudaSetDevice@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L115
	call	cudaGetLastError@PLT
	leaq	.LC7(%rip), %rsi
	movl	%ebx, %edi
	call	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
.L115:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L121:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE6859:
	.section	.gcc_except_table._ZN4cuda3__423__ensure_current_deviceD2Ev,"aG",@progbits,_ZN4cuda3__423__ensure_current_deviceD5Ev,comdat
.LLSDA6859:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE6859-.LLSDACSB6859
.LLSDACSB6859:
.LLSDACSE6859:
	.section	.text._ZN4cuda3__423__ensure_current_deviceD2Ev,"axG",@progbits,_ZN4cuda3__423__ensure_current_deviceD5Ev,comdat
	.size	_ZN4cuda3__423__ensure_current_deviceD2Ev, .-_ZN4cuda3__423__ensure_current_deviceD2Ev
	.weak	_ZN4cuda3__423__ensure_current_deviceD1Ev
	.set	_ZN4cuda3__423__ensure_current_deviceD1Ev,_ZN4cuda3__423__ensure_current_deviceD2Ev
	.section	.text._ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st,"axG",@progbits,_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st,comdat
	.weak	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	.type	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st, @function
_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st:
.LFB7096:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	call	cudaStreamSynchronize@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L127
	testl	%eax, %eax
	jne	.L124
.L127:
	movl	%ebx, %eax
.L124:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7096:
	.size	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st, .-_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv
	.type	_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv, @function
_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv:
.LFB8344:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	leaq	_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result(%rip), %rbx
	pushq	%rcx
	.cfi_def_cfa_offset 32
	movb	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result(%rip), %al
	testb	%al, %al
	jne	.L134
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L134
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE(%rip), %rax
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD1Ev(%rip), %rdi
	movq	%rbx, %rsi
	leaq	__dso_handle(%rip), %rdx
	movq	%rax, _ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result(%rip)
	call	__cxa_atexit@PLT
	movq	%rbp, %rdi
	call	__cxa_guard_release@PLT
.L134:
	movq	%rbx, %rax
	popq	%rdx
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8344:
	.size	_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv, .-_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei:
.LFB8342:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	subq	$32, %rsp
	.cfi_def_cfa_offset 48
	movl	%edx, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 24(%rsp)
	xorl	%eax, %eax
	call	_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv
	movl	12(%rsp), %edx
	movq	%rbx, %rdi
	movq	%rax, %rsi
	movq	(%rax), %rax
	call	*48(%rax)
	movq	24(%rsp), %rax
	subq	%fs:40, %rax
	je	.L141
	call	__stack_chk_fail@PLT
.L141:
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8342:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv
	.type	_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv, @function
_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv:
.LFB8349:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	leaq	_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result(%rip), %rbx
	pushq	%rcx
	.cfi_def_cfa_offset 32
	movb	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result(%rip), %al
	testb	%al, %al
	jne	.L145
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L145
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE(%rip), %rax
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD1Ev(%rip), %rdi
	movq	%rbx, %rsi
	leaq	__dso_handle(%rip), %rdx
	movq	%rax, _ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result(%rip)
	call	__cxa_atexit@PLT
	movq	%rbp, %rdi
	call	__cxa_guard_release@PLT
.L145:
	movq	%rbx, %rax
	popq	%rdx
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8349:
	.size	_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv, .-_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE
	.type	_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE, @function
_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE:
.LFB8394:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%edi, %ebx
	call	_ZN6thrust20THRUST_200700_890_NS6system16generic_categoryEv
	movq	%rax, %rdx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8394:
	.size	_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE, .-_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi:
.LFB8343:
	.cfi_startproc
	endbr64
	leal	-9901(%rsi), %eax
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%esi, %ebx
	cmpl	$78, %eax
	ja	.L154
	leaq	.L156(%rip), %rdx
	movslq	(%rdx,%rax,4), %rax
	addq	%rdx, %rax
	notrack jmp	*%rax
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,comdat
	.align 4
	.align 4
.L156:
	.long	.L233-.L156
	.long	.L232-.L156
	.long	.L231-.L156
	.long	.L230-.L156
	.long	.L229-.L156
	.long	.L228-.L156
	.long	.L227-.L156
	.long	.L226-.L156
	.long	.L225-.L156
	.long	.L224-.L156
	.long	.L223-.L156
	.long	.L222-.L156
	.long	.L221-.L156
	.long	.L220-.L156
	.long	.L219-.L156
	.long	.L218-.L156
	.long	.L217-.L156
	.long	.L216-.L156
	.long	.L215-.L156
	.long	.L214-.L156
	.long	.L213-.L156
	.long	.L212-.L156
	.long	.L211-.L156
	.long	.L210-.L156
	.long	.L209-.L156
	.long	.L208-.L156
	.long	.L207-.L156
	.long	.L206-.L156
	.long	.L205-.L156
	.long	.L204-.L156
	.long	.L203-.L156
	.long	.L202-.L156
	.long	.L201-.L156
	.long	.L200-.L156
	.long	.L199-.L156
	.long	.L198-.L156
	.long	.L154-.L156
	.long	.L197-.L156
	.long	.L196-.L156
	.long	.L195-.L156
	.long	.L194-.L156
	.long	.L193-.L156
	.long	.L192-.L156
	.long	.L191-.L156
	.long	.L190-.L156
	.long	.L189-.L156
	.long	.L188-.L156
	.long	.L187-.L156
	.long	.L186-.L156
	.long	.L185-.L156
	.long	.L184-.L156
	.long	.L183-.L156
	.long	.L182-.L156
	.long	.L181-.L156
	.long	.L180-.L156
	.long	.L179-.L156
	.long	.L178-.L156
	.long	.L177-.L156
	.long	.L176-.L156
	.long	.L175-.L156
	.long	.L174-.L156
	.long	.L173-.L156
	.long	.L172-.L156
	.long	.L171-.L156
	.long	.L170-.L156
	.long	.L169-.L156
	.long	.L168-.L156
	.long	.L167-.L156
	.long	.L166-.L156
	.long	.L165-.L156
	.long	.L164-.L156
	.long	.L163-.L156
	.long	.L162-.L156
	.long	.L161-.L156
	.long	.L160-.L156
	.long	.L159-.L156
	.long	.L158-.L156
	.long	.L157-.L156
	.long	.L155-.L156
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,comdat
.L233:
	movl	$9901, %edi
	jmp	.L235
.L232:
	movl	$9902, %edi
	jmp	.L235
.L231:
	movl	$9903, %edi
	jmp	.L235
.L230:
	movl	$9904, %edi
	jmp	.L235
.L189:
	movl	$9946, %edi
	jmp	.L235
.L188:
	movl	$9947, %edi
	jmp	.L235
.L187:
	movl	$9948, %edi
	jmp	.L235
.L186:
	movl	$9949, %edi
	jmp	.L235
.L229:
	movl	$9905, %edi
	jmp	.L235
.L185:
	movl	$9950, %edi
	jmp	.L235
.L228:
	movl	$9906, %edi
	jmp	.L235
.L227:
	movl	$9907, %edi
	jmp	.L235
.L226:
	movl	$9908, %edi
	jmp	.L235
.L225:
	movl	$9909, %edi
	jmp	.L235
.L184:
	movl	$9951, %edi
	jmp	.L235
.L224:
	movl	$9910, %edi
	jmp	.L235
.L183:
	movl	$9952, %edi
	jmp	.L235
.L182:
	movl	$9953, %edi
	jmp	.L235
.L181:
	movl	$9954, %edi
	jmp	.L235
.L180:
	movl	$9955, %edi
	jmp	.L235
.L179:
	movl	$9956, %edi
	jmp	.L235
.L178:
	movl	$9957, %edi
	jmp	.L235
.L193:
	movl	$9942, %edi
	jmp	.L235
.L223:
	movl	$9911, %edi
	jmp	.L235
.L222:
	movl	$9912, %edi
	jmp	.L235
.L190:
	movl	$9945, %edi
	jmp	.L235
.L177:
	movl	$9958, %edi
	jmp	.L235
.L176:
	movl	$9959, %edi
	jmp	.L235
.L192:
	movl	$9943, %edi
	jmp	.L235
.L175:
	movl	$9960, %edi
	jmp	.L235
.L174:
	movl	$9961, %edi
	jmp	.L235
.L173:
	movl	$9962, %edi
	jmp	.L235
.L221:
	movl	$9913, %edi
	jmp	.L235
.L220:
	movl	$9914, %edi
	jmp	.L235
.L219:
	movl	$9915, %edi
	jmp	.L235
.L218:
	movl	$9916, %edi
	jmp	.L235
.L217:
	movl	$9917, %edi
	jmp	.L235
.L172:
	movl	$9963, %edi
	jmp	.L235
.L216:
	movl	$9918, %edi
	jmp	.L235
.L171:
	movl	$9964, %edi
	jmp	.L235
.L215:
	movl	$9919, %edi
	jmp	.L235
.L214:
	movl	$9920, %edi
	jmp	.L235
.L213:
	movl	$9921, %edi
	jmp	.L235
.L170:
	movl	$9965, %edi
	jmp	.L235
.L212:
	movl	$9922, %edi
	jmp	.L235
.L169:
	movl	$9966, %edi
	jmp	.L235
.L168:
	movl	$9967, %edi
	jmp	.L235
.L167:
	movl	$9968, %edi
	jmp	.L235
.L166:
	movl	$9969, %edi
	jmp	.L235
.L165:
	movl	$9970, %edi
	jmp	.L235
.L211:
	movl	$9923, %edi
	jmp	.L235
.L210:
	movl	$9924, %edi
	jmp	.L235
.L209:
	movl	$9925, %edi
	jmp	.L235
.L164:
	movl	$9971, %edi
	jmp	.L235
.L208:
	movl	$9926, %edi
	jmp	.L235
.L207:
	movl	$9927, %edi
	jmp	.L235
.L206:
	movl	$9928, %edi
	jmp	.L235
.L163:
	movl	$9972, %edi
	jmp	.L235
.L205:
	movl	$9929, %edi
	jmp	.L235
.L204:
	movl	$9930, %edi
	jmp	.L235
.L203:
	movl	$9931, %edi
	jmp	.L235
.L162:
	movl	$9973, %edi
	jmp	.L235
.L202:
	movl	$9932, %edi
	jmp	.L235
.L201:
	movl	$9933, %edi
	jmp	.L235
.L161:
	movl	$9974, %edi
	jmp	.L235
.L160:
	movl	$9975, %edi
	jmp	.L235
.L159:
	movl	$9976, %edi
	jmp	.L235
.L191:
	movl	$9944, %edi
	jmp	.L235
.L200:
	movl	$9934, %edi
	jmp	.L235
.L199:
	movl	$9935, %edi
	jmp	.L235
.L198:
	movl	$9936, %edi
	jmp	.L235
.L197:
	movl	$9938, %edi
	jmp	.L235
.L158:
	movl	$9977, %edi
	jmp	.L235
.L157:
	movl	$9978, %edi
	jmp	.L235
.L155:
	movl	$9979, %edi
	jmp	.L235
.L196:
	movl	$9939, %edi
	jmp	.L235
.L195:
	movl	$9940, %edi
	jmp	.L235
.L194:
	movl	$9941, %edi
.L235:
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE
.L154:
	.cfi_restore_state
	call	_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv
	movq	%rax, %rdx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8343:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	.type	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv, @function
_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv:
.LFB8404:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	leaq	_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result(%rip), %rbx
	pushq	%rcx
	.cfi_def_cfa_offset 32
	movb	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result(%rip), %al
	testb	%al, %al
	jne	.L238
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L238
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE(%rip), %rax
	leaq	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD1Ev(%rip), %rdi
	movq	%rbx, %rsi
	leaq	__dso_handle(%rip), %rdx
	movq	%rax, _ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result(%rip)
	call	__cxa_atexit@PLT
	movq	%rbp, %rdi
	call	__cxa_guard_release@PLT
.L238:
	movq	%rbx, %rax
	popq	%rdx
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8404:
	.size	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv, .-_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi
	.type	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi, @function
_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi:
.LFB8403:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%esi, %ebx
	cmpl	$998, %esi
	jg	.L245
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movq	%rax, %rdx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	ret
.L245:
	.cfi_restore_state
	call	_ZN6thrust20THRUST_200700_890_NS6system15system_categoryEv
	movl	%ebx, %esi
	popq	%rbx
	.cfi_def_cfa_offset 8
	movq	%rax, %rdi
	movq	(%rax), %rax
	movq	24(%rax), %rax
	jmp	*%rax
	.cfi_endproc
.LFE8403:
	.size	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi, .-_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	.type	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc, @function
_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc:
.LFB8448:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA8448
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	movq	%rsi, %r13
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	movl	%edi, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	pushq	%rcx
	.cfi_def_cfa_offset 48
.LEHB3:
	call	cudaGetLastError@PLT
.LEHE3:
	testl	%ebp, %ebp
	je	.L249
	movl	$64, %edi
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rbx
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movq	%r13, %rsi
	movq	%rbx, %rdi
	movq	%rax, %r12
.LEHB4:
	call	_ZNSt13runtime_errorC2EPKc@PLT
.LEHE4:
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE(%rip), %rax
	xorl	%edx, %edx
	movl	%ebp, 16(%rbx)
	movq	%rbx, %rdi
	movq	%rax, (%rbx)
	leaq	48(%rbx), %rax
	leaq	_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE(%rip), %rsi
	movq	%rdx, 40(%rbx)
	leaq	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD1Ev(%rip), %rdx
	movq	%r12, 24(%rbx)
	movq	%rax, 32(%rbx)
	movb	$0, 48(%rbx)
.LEHB5:
	call	__cxa_throw@PLT
.L252:
	endbr64
	movq	%rax, %rbp
.L251:
	movq	%rbx, %rdi
	call	__cxa_free_exception@PLT
	movq	%rbp, %rdi
	call	_Unwind_Resume@PLT
.LEHE5:
.L249:
	popq	%rax
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8448:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,comdat
.LLSDA8448:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE8448-.LLSDACSB8448
.LLSDACSB8448:
	.uleb128 .LEHB3-.LFB8448
	.uleb128 .LEHE3-.LEHB3
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB4-.LFB8448
	.uleb128 .LEHE4-.LEHB4
	.uleb128 .L252-.LFB8448
	.uleb128 0
	.uleb128 .LEHB5-.LFB8448
	.uleb128 .LEHE5-.LEHB5
	.uleb128 0
	.uleb128 0
.LLSDACSE8448:
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc, .-_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm.str1.1,"aMS",@progbits,1
.LC8:
	.string	"CUDA free failed"
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm
	.type	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm, @function
_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm:
.LFB12548:
	.cfi_startproc
	endbr64
	pushq	%rcx
	.cfi_def_cfa_offset 16
	movq	%rsi, %rdi
	call	cudaFree@PLT
	testl	%eax, %eax
	je	.L254
	movl	%eax, %edi
	leaq	.LC8(%rip), %rsi
	popq	%rdx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.L254:
	.cfi_restore_state
	popq	%rax
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12548:
	.size	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm, .-_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm
	.section	.text._ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	.type	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm, @function
_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm:
.LFB12498:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rdi
	jmp	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm
	.cfi_endproc
.LFE12498:
	.size	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm, .-_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	.section	.text.nvtxSetInitFunctionsToNoops_v3,"axG",@progbits,nvtxSetInitFunctionsToNoops_v3,comdat
	.weak	nvtxSetInitFunctionsToNoops_v3
	.hidden	nvtxSetInitFunctionsToNoops_v3
	.type	nvtxSetInitFunctionsToNoops_v3, @function
nvtxSetInitFunctionsToNoops_v3:
.LFB8636:
	.cfi_startproc
	endbr64
	testl	%edi, %edi
	leaq	nvtxMarkEx_impl_init_v3(%rip), %rdx
	setne	%al
	cmpq	%rdx, 48+nvtxGlobals_v3(%rip)
	je	.L387
	testb	%al, %al
	je	.L259
.L387:
	xorl	%r10d, %r10d
	movq	%r10, 48+nvtxGlobals_v3(%rip)
.L259:
	leaq	nvtxMarkA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 56+nvtxGlobals_v3(%rip)
	je	.L388
	testb	%al, %al
	je	.L261
.L388:
	xorl	%r9d, %r9d
	movq	%r9, 56+nvtxGlobals_v3(%rip)
.L261:
	leaq	nvtxMarkW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 64+nvtxGlobals_v3(%rip)
	je	.L389
	testb	%al, %al
	je	.L263
.L389:
	xorl	%r8d, %r8d
	movq	%r8, 64+nvtxGlobals_v3(%rip)
.L263:
	leaq	nvtxRangeStartEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 72+nvtxGlobals_v3(%rip)
	je	.L390
	testb	%al, %al
	je	.L265
.L390:
	xorl	%edi, %edi
	movq	%rdi, 72+nvtxGlobals_v3(%rip)
.L265:
	leaq	nvtxRangeStartA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 80+nvtxGlobals_v3(%rip)
	je	.L391
	testb	%al, %al
	je	.L267
.L391:
	xorl	%esi, %esi
	movq	%rsi, 80+nvtxGlobals_v3(%rip)
.L267:
	leaq	nvtxRangeStartW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 88+nvtxGlobals_v3(%rip)
	je	.L392
	testb	%al, %al
	je	.L269
.L392:
	xorl	%ecx, %ecx
	movq	%rcx, 88+nvtxGlobals_v3(%rip)
.L269:
	leaq	nvtxRangeEnd_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 96+nvtxGlobals_v3(%rip)
	je	.L393
	testb	%al, %al
	je	.L271
.L393:
	xorl	%edx, %edx
	movq	%rdx, 96+nvtxGlobals_v3(%rip)
.L271:
	leaq	nvtxRangePushEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 104+nvtxGlobals_v3(%rip)
	je	.L394
	testb	%al, %al
	je	.L273
.L394:
	xorl	%r11d, %r11d
	movq	%r11, 104+nvtxGlobals_v3(%rip)
.L273:
	leaq	nvtxRangePushA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 112+nvtxGlobals_v3(%rip)
	je	.L395
	testb	%al, %al
	je	.L275
.L395:
	xorl	%r10d, %r10d
	movq	%r10, 112+nvtxGlobals_v3(%rip)
.L275:
	leaq	nvtxRangePushW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 120+nvtxGlobals_v3(%rip)
	je	.L396
	testb	%al, %al
	je	.L277
.L396:
	xorl	%r9d, %r9d
	movq	%r9, 120+nvtxGlobals_v3(%rip)
.L277:
	leaq	nvtxRangePop_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 128+nvtxGlobals_v3(%rip)
	je	.L397
	testb	%al, %al
	je	.L279
.L397:
	xorl	%r8d, %r8d
	movq	%r8, 128+nvtxGlobals_v3(%rip)
.L279:
	leaq	nvtxNameCategoryA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 136+nvtxGlobals_v3(%rip)
	je	.L398
	testb	%al, %al
	je	.L281
.L398:
	xorl	%edi, %edi
	movq	%rdi, 136+nvtxGlobals_v3(%rip)
.L281:
	leaq	nvtxNameCategoryW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 144+nvtxGlobals_v3(%rip)
	je	.L399
	testb	%al, %al
	je	.L283
.L399:
	xorl	%esi, %esi
	movq	%rsi, 144+nvtxGlobals_v3(%rip)
.L283:
	leaq	nvtxNameOsThreadA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 152+nvtxGlobals_v3(%rip)
	je	.L400
	testb	%al, %al
	je	.L285
.L400:
	xorl	%ecx, %ecx
	movq	%rcx, 152+nvtxGlobals_v3(%rip)
.L285:
	leaq	nvtxNameOsThreadW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 160+nvtxGlobals_v3(%rip)
	je	.L401
	testb	%al, %al
	je	.L287
.L401:
	xorl	%edx, %edx
	movq	%rdx, 160+nvtxGlobals_v3(%rip)
.L287:
	leaq	nvtxNameCuDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 168+nvtxGlobals_v3(%rip)
	je	.L402
	testb	%al, %al
	je	.L289
.L402:
	xorl	%r11d, %r11d
	movq	%r11, 168+nvtxGlobals_v3(%rip)
.L289:
	leaq	nvtxNameCuDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 176+nvtxGlobals_v3(%rip)
	je	.L403
	testb	%al, %al
	je	.L291
.L403:
	xorl	%r10d, %r10d
	movq	%r10, 176+nvtxGlobals_v3(%rip)
.L291:
	leaq	nvtxNameCuContextA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 184+nvtxGlobals_v3(%rip)
	je	.L404
	testb	%al, %al
	je	.L293
.L404:
	xorl	%r9d, %r9d
	movq	%r9, 184+nvtxGlobals_v3(%rip)
.L293:
	leaq	nvtxNameCuContextW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 192+nvtxGlobals_v3(%rip)
	je	.L405
	testb	%al, %al
	je	.L295
.L405:
	xorl	%r8d, %r8d
	movq	%r8, 192+nvtxGlobals_v3(%rip)
.L295:
	leaq	nvtxNameCuStreamA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 200+nvtxGlobals_v3(%rip)
	je	.L406
	testb	%al, %al
	je	.L297
.L406:
	xorl	%edi, %edi
	movq	%rdi, 200+nvtxGlobals_v3(%rip)
.L297:
	leaq	nvtxNameCuStreamW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 208+nvtxGlobals_v3(%rip)
	je	.L407
	testb	%al, %al
	je	.L299
.L407:
	xorl	%esi, %esi
	movq	%rsi, 208+nvtxGlobals_v3(%rip)
.L299:
	leaq	nvtxNameCuEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 216+nvtxGlobals_v3(%rip)
	je	.L408
	testb	%al, %al
	je	.L301
.L408:
	xorl	%ecx, %ecx
	movq	%rcx, 216+nvtxGlobals_v3(%rip)
.L301:
	leaq	nvtxNameCuEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 224+nvtxGlobals_v3(%rip)
	je	.L409
	testb	%al, %al
	je	.L303
.L409:
	xorl	%edx, %edx
	movq	%rdx, 224+nvtxGlobals_v3(%rip)
.L303:
	leaq	nvtxNameClDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 232+nvtxGlobals_v3(%rip)
	je	.L410
	testb	%al, %al
	je	.L305
.L410:
	xorl	%r11d, %r11d
	movq	%r11, 232+nvtxGlobals_v3(%rip)
.L305:
	leaq	nvtxNameClDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 240+nvtxGlobals_v3(%rip)
	je	.L411
	testb	%al, %al
	je	.L307
.L411:
	xorl	%r10d, %r10d
	movq	%r10, 240+nvtxGlobals_v3(%rip)
.L307:
	leaq	nvtxNameClContextA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 248+nvtxGlobals_v3(%rip)
	je	.L412
	testb	%al, %al
	je	.L309
.L412:
	xorl	%r9d, %r9d
	movq	%r9, 248+nvtxGlobals_v3(%rip)
.L309:
	leaq	nvtxNameClContextW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 256+nvtxGlobals_v3(%rip)
	je	.L413
	testb	%al, %al
	je	.L311
.L413:
	xorl	%r8d, %r8d
	movq	%r8, 256+nvtxGlobals_v3(%rip)
.L311:
	leaq	nvtxNameClCommandQueueA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 264+nvtxGlobals_v3(%rip)
	je	.L414
	testb	%al, %al
	je	.L313
.L414:
	xorl	%edi, %edi
	movq	%rdi, 264+nvtxGlobals_v3(%rip)
.L313:
	leaq	nvtxNameClCommandQueueW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 272+nvtxGlobals_v3(%rip)
	je	.L415
	testb	%al, %al
	je	.L315
.L415:
	xorl	%esi, %esi
	movq	%rsi, 272+nvtxGlobals_v3(%rip)
.L315:
	leaq	nvtxNameClMemObjectA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 280+nvtxGlobals_v3(%rip)
	je	.L416
	testb	%al, %al
	je	.L317
.L416:
	xorl	%ecx, %ecx
	movq	%rcx, 280+nvtxGlobals_v3(%rip)
.L317:
	leaq	nvtxNameClMemObjectW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 288+nvtxGlobals_v3(%rip)
	je	.L417
	testb	%al, %al
	je	.L319
.L417:
	xorl	%edx, %edx
	movq	%rdx, 288+nvtxGlobals_v3(%rip)
.L319:
	leaq	nvtxNameClSamplerA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 296+nvtxGlobals_v3(%rip)
	je	.L418
	testb	%al, %al
	je	.L321
.L418:
	xorl	%r11d, %r11d
	movq	%r11, 296+nvtxGlobals_v3(%rip)
.L321:
	leaq	nvtxNameClSamplerW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 304+nvtxGlobals_v3(%rip)
	je	.L419
	testb	%al, %al
	je	.L323
.L419:
	xorl	%r10d, %r10d
	movq	%r10, 304+nvtxGlobals_v3(%rip)
.L323:
	leaq	nvtxNameClProgramA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 312+nvtxGlobals_v3(%rip)
	je	.L420
	testb	%al, %al
	je	.L325
.L420:
	xorl	%r9d, %r9d
	movq	%r9, 312+nvtxGlobals_v3(%rip)
.L325:
	leaq	nvtxNameClProgramW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 320+nvtxGlobals_v3(%rip)
	je	.L421
	testb	%al, %al
	je	.L327
.L421:
	xorl	%r8d, %r8d
	movq	%r8, 320+nvtxGlobals_v3(%rip)
.L327:
	leaq	nvtxNameClEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 328+nvtxGlobals_v3(%rip)
	je	.L422
	testb	%al, %al
	je	.L329
.L422:
	xorl	%edi, %edi
	movq	%rdi, 328+nvtxGlobals_v3(%rip)
.L329:
	leaq	nvtxNameClEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 336+nvtxGlobals_v3(%rip)
	je	.L423
	testb	%al, %al
	je	.L331
.L423:
	xorl	%esi, %esi
	movq	%rsi, 336+nvtxGlobals_v3(%rip)
.L331:
	leaq	nvtxNameCudaDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 344+nvtxGlobals_v3(%rip)
	je	.L424
	testb	%al, %al
	je	.L333
.L424:
	xorl	%ecx, %ecx
	movq	%rcx, 344+nvtxGlobals_v3(%rip)
.L333:
	leaq	nvtxNameCudaDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 352+nvtxGlobals_v3(%rip)
	je	.L425
	testb	%al, %al
	je	.L335
.L425:
	xorl	%edx, %edx
	movq	%rdx, 352+nvtxGlobals_v3(%rip)
.L335:
	leaq	nvtxNameCudaStreamA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 360+nvtxGlobals_v3(%rip)
	je	.L426
	testb	%al, %al
	je	.L337
.L426:
	xorl	%r11d, %r11d
	movq	%r11, 360+nvtxGlobals_v3(%rip)
.L337:
	leaq	nvtxNameCudaStreamW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 368+nvtxGlobals_v3(%rip)
	je	.L427
	testb	%al, %al
	je	.L339
.L427:
	xorl	%r10d, %r10d
	movq	%r10, 368+nvtxGlobals_v3(%rip)
.L339:
	leaq	nvtxNameCudaEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 376+nvtxGlobals_v3(%rip)
	je	.L428
	testb	%al, %al
	je	.L341
.L428:
	xorl	%r9d, %r9d
	movq	%r9, 376+nvtxGlobals_v3(%rip)
.L341:
	leaq	nvtxNameCudaEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 384+nvtxGlobals_v3(%rip)
	je	.L429
	testb	%al, %al
	je	.L343
.L429:
	xorl	%r8d, %r8d
	movq	%r8, 384+nvtxGlobals_v3(%rip)
.L343:
	leaq	nvtxDomainMarkEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 392+nvtxGlobals_v3(%rip)
	je	.L430
	testb	%al, %al
	je	.L345
.L430:
	xorl	%edi, %edi
	movq	%rdi, 392+nvtxGlobals_v3(%rip)
.L345:
	leaq	nvtxDomainRangeStartEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 400+nvtxGlobals_v3(%rip)
	je	.L431
	testb	%al, %al
	je	.L347
.L431:
	xorl	%esi, %esi
	movq	%rsi, 400+nvtxGlobals_v3(%rip)
.L347:
	leaq	nvtxDomainRangeEnd_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 408+nvtxGlobals_v3(%rip)
	je	.L432
	testb	%al, %al
	je	.L349
.L432:
	xorl	%ecx, %ecx
	movq	%rcx, 408+nvtxGlobals_v3(%rip)
.L349:
	leaq	nvtxDomainRangePushEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 416+nvtxGlobals_v3(%rip)
	je	.L433
	testb	%al, %al
	je	.L351
.L433:
	xorl	%edx, %edx
	movq	%rdx, 416+nvtxGlobals_v3(%rip)
.L351:
	leaq	nvtxDomainRangePop_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 424+nvtxGlobals_v3(%rip)
	je	.L434
	testb	%al, %al
	je	.L353
.L434:
	xorl	%r11d, %r11d
	movq	%r11, 424+nvtxGlobals_v3(%rip)
.L353:
	leaq	nvtxDomainResourceCreate_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 432+nvtxGlobals_v3(%rip)
	je	.L435
	testb	%al, %al
	je	.L355
.L435:
	xorl	%r10d, %r10d
	movq	%r10, 432+nvtxGlobals_v3(%rip)
.L355:
	leaq	nvtxDomainResourceDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 440+nvtxGlobals_v3(%rip)
	je	.L436
	testb	%al, %al
	je	.L357
.L436:
	xorl	%r9d, %r9d
	movq	%r9, 440+nvtxGlobals_v3(%rip)
.L357:
	leaq	nvtxDomainNameCategoryA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 448+nvtxGlobals_v3(%rip)
	je	.L437
	testb	%al, %al
	je	.L359
.L437:
	xorl	%r8d, %r8d
	movq	%r8, 448+nvtxGlobals_v3(%rip)
.L359:
	leaq	nvtxDomainNameCategoryW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 456+nvtxGlobals_v3(%rip)
	je	.L438
	testb	%al, %al
	je	.L361
.L438:
	xorl	%edi, %edi
	movq	%rdi, 456+nvtxGlobals_v3(%rip)
.L361:
	leaq	nvtxDomainRegisterStringA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 464+nvtxGlobals_v3(%rip)
	je	.L439
	testb	%al, %al
	je	.L363
.L439:
	xorl	%esi, %esi
	movq	%rsi, 464+nvtxGlobals_v3(%rip)
.L363:
	leaq	nvtxDomainRegisterStringW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 472+nvtxGlobals_v3(%rip)
	je	.L440
	testb	%al, %al
	je	.L365
.L440:
	xorl	%ecx, %ecx
	movq	%rcx, 472+nvtxGlobals_v3(%rip)
.L365:
	leaq	nvtxDomainCreateA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 480+nvtxGlobals_v3(%rip)
	je	.L441
	testb	%al, %al
	je	.L367
.L441:
	xorl	%edx, %edx
	movq	%rdx, 480+nvtxGlobals_v3(%rip)
.L367:
	leaq	nvtxDomainCreateW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 488+nvtxGlobals_v3(%rip)
	je	.L442
	testb	%al, %al
	je	.L369
.L442:
	xorl	%r11d, %r11d
	movq	%r11, 488+nvtxGlobals_v3(%rip)
.L369:
	leaq	nvtxDomainDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 496+nvtxGlobals_v3(%rip)
	je	.L443
	testb	%al, %al
	je	.L371
.L443:
	xorl	%r10d, %r10d
	movq	%r10, 496+nvtxGlobals_v3(%rip)
.L371:
	leaq	nvtxInitialize_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 504+nvtxGlobals_v3(%rip)
	je	.L444
	testb	%al, %al
	je	.L373
.L444:
	xorl	%r9d, %r9d
	movq	%r9, 504+nvtxGlobals_v3(%rip)
.L373:
	leaq	nvtxDomainSyncUserCreate_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 512+nvtxGlobals_v3(%rip)
	je	.L445
	testb	%al, %al
	je	.L375
.L445:
	xorl	%r8d, %r8d
	movq	%r8, 512+nvtxGlobals_v3(%rip)
.L375:
	leaq	nvtxDomainSyncUserDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 520+nvtxGlobals_v3(%rip)
	je	.L446
	testb	%al, %al
	je	.L377
.L446:
	xorl	%edi, %edi
	movq	%rdi, 520+nvtxGlobals_v3(%rip)
.L377:
	leaq	nvtxDomainSyncUserAcquireStart_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 528+nvtxGlobals_v3(%rip)
	je	.L447
	testb	%al, %al
	je	.L379
.L447:
	xorl	%esi, %esi
	movq	%rsi, 528+nvtxGlobals_v3(%rip)
.L379:
	leaq	nvtxDomainSyncUserAcquireFailed_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 536+nvtxGlobals_v3(%rip)
	je	.L448
	testb	%al, %al
	je	.L381
.L448:
	xorl	%ecx, %ecx
	movq	%rcx, 536+nvtxGlobals_v3(%rip)
.L381:
	leaq	nvtxDomainSyncUserAcquireSuccess_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 544+nvtxGlobals_v3(%rip)
	je	.L449
	testb	%al, %al
	je	.L383
.L449:
	xorl	%edx, %edx
	movq	%rdx, 544+nvtxGlobals_v3(%rip)
.L383:
	leaq	nvtxDomainSyncUserReleasing_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 552+nvtxGlobals_v3(%rip)
	je	.L450
	testb	%al, %al
	je	.L258
.L450:
	xorl	%eax, %eax
	movq	%rax, 552+nvtxGlobals_v3(%rip)
.L258:
	ret
	.cfi_endproc
.LFE8636:
	.size	nvtxSetInitFunctionsToNoops_v3, .-nvtxSetInitFunctionsToNoops_v3
	.section	.rodata.nvtxInitializeInjectionLibrary_v3.str1.1,"aMS",@progbits,1
.LC9:
	.string	"NVTX_INJECTION64_PATH"
.LC10:
	.string	"InitializeInjectionNvtx2"
	.section	.text.nvtxInitializeInjectionLibrary_v3,"axG",@progbits,nvtxInitializeInjectionLibrary_v3,comdat
	.weak	nvtxInitializeInjectionLibrary_v3
	.hidden	nvtxInitializeInjectionLibrary_v3
	.type	nvtxInitializeInjectionLibrary_v3, @function
nvtxInitializeInjectionLibrary_v3:
.LFB8637:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	leaq	.LC9(%rip), %rdi
	call	getenv@PLT
	movq	%rax, %rbx
	testq	%rax, %rax
	je	.L644
	movl	$1, %esi
	movq	%rax, %rdi
	call	dlopen@PLT
	movl	$4, %edx
	movq	%rax, %rbx
	testq	%rax, %rax
	je	.L643
	leaq	.LC10(%rip), %rsi
	movq	%rax, %rdi
	call	dlsym@PLT
	testq	%rax, %rax
	jne	.L646
	movq	%rbx, %rdi
	call	dlclose@PLT
	movl	$5, %edx
	jmp	.L643
.L644:
	movq	InitializeInjectionNvtx2_fnptr(%rip), %rax
	movl	$7, %edx
	testq	%rax, %rax
	je	.L643
.L646:
	leaq	nvtxGetExportTable_v3(%rip), %rdi
	call	*%rax
	xorl	%edx, %edx
	testl	%eax, %eax
	jne	.L643
	testq	%rbx, %rbx
	je	.L647
	movq	%rbx, %rdi
	call	dlclose@PLT
.L647:
	movl	$6, %edx
.L643:
	movl	%edx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8637:
	.size	nvtxInitializeInjectionLibrary_v3, .-nvtxInitializeInjectionLibrary_v3
	.section	.text.nvtxInitOnce_v3,"axG",@progbits,nvtxInitOnce_v3,comdat
	.weak	nvtxInitOnce_v3
	.hidden	nvtxInitOnce_v3
	.type	nvtxInitOnce_v3, @function
nvtxInitOnce_v3:
.LFB8638:
	.cfi_startproc
	endbr64
	movl	nvtxGlobals_v3(%rip), %eax
	cmpl	$2, %eax
	je	.L663
	pushq	%rdx
	.cfi_def_cfa_offset 16
	movl	$1, %eax
	xorl	%edx, %edx
	mfence
	lock cmpxchgl	%edx, nvtxGlobals_v3(%rip)
	testl	%eax, %eax
	jne	.L666
	call	nvtxInitializeInjectionLibrary_v3
	xorl	%edi, %edi
	testl	%eax, %eax
	setne	%dil
	call	nvtxSetInitFunctionsToNoops_v3
	movl	$2, %eax
	mfence
	xchgl	nvtxGlobals_v3(%rip), %eax
	jmp	.L655
.L666:
	mfence
	movl	nvtxGlobals_v3(%rip), %eax
	cmpl	$2, %eax
	je	.L655
	call	sched_yield@PLT
	jmp	.L666
.L655:
	popq	%rax
	.cfi_def_cfa_offset 8
	ret
.L663:
	ret
	.cfi_endproc
.LFE8638:
	.size	nvtxInitOnce_v3, .-nvtxInitOnce_v3
	.section	.text.nvtxDomainSyncUserReleasing_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserReleasing_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserReleasing_impl_init_v3
	.hidden	nvtxDomainSyncUserReleasing_impl_init_v3
	.type	nvtxDomainSyncUserReleasing_impl_init_v3, @function
nvtxDomainSyncUserReleasing_impl_init_v3:
.LFB8635:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	552+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L667
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L667:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8635:
	.size	nvtxDomainSyncUserReleasing_impl_init_v3, .-nvtxDomainSyncUserReleasing_impl_init_v3
	.section	.text.nvtxDomainSyncUserAcquireSuccess_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserAcquireSuccess_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserAcquireSuccess_impl_init_v3
	.hidden	nvtxDomainSyncUserAcquireSuccess_impl_init_v3
	.type	nvtxDomainSyncUserAcquireSuccess_impl_init_v3, @function
nvtxDomainSyncUserAcquireSuccess_impl_init_v3:
.LFB8634:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	544+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L670
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L670:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8634:
	.size	nvtxDomainSyncUserAcquireSuccess_impl_init_v3, .-nvtxDomainSyncUserAcquireSuccess_impl_init_v3
	.section	.text.nvtxDomainSyncUserAcquireFailed_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserAcquireFailed_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserAcquireFailed_impl_init_v3
	.hidden	nvtxDomainSyncUserAcquireFailed_impl_init_v3
	.type	nvtxDomainSyncUserAcquireFailed_impl_init_v3, @function
nvtxDomainSyncUserAcquireFailed_impl_init_v3:
.LFB8633:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	536+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L673
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L673:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8633:
	.size	nvtxDomainSyncUserAcquireFailed_impl_init_v3, .-nvtxDomainSyncUserAcquireFailed_impl_init_v3
	.section	.text.nvtxDomainSyncUserAcquireStart_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserAcquireStart_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserAcquireStart_impl_init_v3
	.hidden	nvtxDomainSyncUserAcquireStart_impl_init_v3
	.type	nvtxDomainSyncUserAcquireStart_impl_init_v3, @function
nvtxDomainSyncUserAcquireStart_impl_init_v3:
.LFB8632:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	528+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L676
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L676:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8632:
	.size	nvtxDomainSyncUserAcquireStart_impl_init_v3, .-nvtxDomainSyncUserAcquireStart_impl_init_v3
	.section	.text.nvtxDomainSyncUserDestroy_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserDestroy_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserDestroy_impl_init_v3
	.hidden	nvtxDomainSyncUserDestroy_impl_init_v3
	.type	nvtxDomainSyncUserDestroy_impl_init_v3, @function
nvtxDomainSyncUserDestroy_impl_init_v3:
.LFB8631:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	520+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L679
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L679:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8631:
	.size	nvtxDomainSyncUserDestroy_impl_init_v3, .-nvtxDomainSyncUserDestroy_impl_init_v3
	.section	.text.nvtxDomainSyncUserCreate_impl_init_v3,"axG",@progbits,nvtxDomainSyncUserCreate_impl_init_v3,comdat
	.weak	nvtxDomainSyncUserCreate_impl_init_v3
	.hidden	nvtxDomainSyncUserCreate_impl_init_v3
	.type	nvtxDomainSyncUserCreate_impl_init_v3, @function
nvtxDomainSyncUserCreate_impl_init_v3:
.LFB8630:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	512+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L683
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L683:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8630:
	.size	nvtxDomainSyncUserCreate_impl_init_v3, .-nvtxDomainSyncUserCreate_impl_init_v3
	.section	.text.nvtxInitialize_impl_init_v3,"axG",@progbits,nvtxInitialize_impl_init_v3,comdat
	.weak	nvtxInitialize_impl_init_v3
	.hidden	nvtxInitialize_impl_init_v3
	.type	nvtxInitialize_impl_init_v3, @function
nvtxInitialize_impl_init_v3:
.LFB8601:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	504+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L685
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L685:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8601:
	.size	nvtxInitialize_impl_init_v3, .-nvtxInitialize_impl_init_v3
	.section	.text.nvtxDomainDestroy_impl_init_v3,"axG",@progbits,nvtxDomainDestroy_impl_init_v3,comdat
	.weak	nvtxDomainDestroy_impl_init_v3
	.hidden	nvtxDomainDestroy_impl_init_v3
	.type	nvtxDomainDestroy_impl_init_v3, @function
nvtxDomainDestroy_impl_init_v3:
.LFB8600:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	496+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L688
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L688:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8600:
	.size	nvtxDomainDestroy_impl_init_v3, .-nvtxDomainDestroy_impl_init_v3
	.section	.text.nvtxDomainCreateW_impl_init_v3,"axG",@progbits,nvtxDomainCreateW_impl_init_v3,comdat
	.weak	nvtxDomainCreateW_impl_init_v3
	.hidden	nvtxDomainCreateW_impl_init_v3
	.type	nvtxDomainCreateW_impl_init_v3, @function
nvtxDomainCreateW_impl_init_v3:
.LFB8599:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	488+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L692
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L692:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8599:
	.size	nvtxDomainCreateW_impl_init_v3, .-nvtxDomainCreateW_impl_init_v3
	.section	.text.nvtxDomainCreateA_impl_init_v3,"axG",@progbits,nvtxDomainCreateA_impl_init_v3,comdat
	.weak	nvtxDomainCreateA_impl_init_v3
	.hidden	nvtxDomainCreateA_impl_init_v3
	.type	nvtxDomainCreateA_impl_init_v3, @function
nvtxDomainCreateA_impl_init_v3:
.LFB8598:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	480+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L695
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L695:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8598:
	.size	nvtxDomainCreateA_impl_init_v3, .-nvtxDomainCreateA_impl_init_v3
	.section	.text.nvtxDomainRegisterStringW_impl_init_v3,"axG",@progbits,nvtxDomainRegisterStringW_impl_init_v3,comdat
	.weak	nvtxDomainRegisterStringW_impl_init_v3
	.hidden	nvtxDomainRegisterStringW_impl_init_v3
	.type	nvtxDomainRegisterStringW_impl_init_v3, @function
nvtxDomainRegisterStringW_impl_init_v3:
.LFB8597:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	472+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L698
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L698:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8597:
	.size	nvtxDomainRegisterStringW_impl_init_v3, .-nvtxDomainRegisterStringW_impl_init_v3
	.section	.text.nvtxDomainRegisterStringA_impl_init_v3,"axG",@progbits,nvtxDomainRegisterStringA_impl_init_v3,comdat
	.weak	nvtxDomainRegisterStringA_impl_init_v3
	.hidden	nvtxDomainRegisterStringA_impl_init_v3
	.type	nvtxDomainRegisterStringA_impl_init_v3, @function
nvtxDomainRegisterStringA_impl_init_v3:
.LFB8596:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	464+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L701
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L701:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8596:
	.size	nvtxDomainRegisterStringA_impl_init_v3, .-nvtxDomainRegisterStringA_impl_init_v3
	.section	.text.nvtxDomainNameCategoryW_impl_init_v3,"axG",@progbits,nvtxDomainNameCategoryW_impl_init_v3,comdat
	.weak	nvtxDomainNameCategoryW_impl_init_v3
	.hidden	nvtxDomainNameCategoryW_impl_init_v3
	.type	nvtxDomainNameCategoryW_impl_init_v3, @function
nvtxDomainNameCategoryW_impl_init_v3:
.LFB8595:
	.cfi_startproc
	endbr64
	subq	$40, %rsp
	.cfi_def_cfa_offset 48
	movq	%rdi, 24(%rsp)
	movl	%esi, 20(%rsp)
	movq	%rdx, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	456+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L703
	movq	8(%rsp), %rdx
	movl	20(%rsp), %esi
	movq	24(%rsp), %rdi
	addq	$40, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L703:
	.cfi_restore_state
	addq	$40, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8595:
	.size	nvtxDomainNameCategoryW_impl_init_v3, .-nvtxDomainNameCategoryW_impl_init_v3
	.section	.text.nvtxDomainNameCategoryA_impl_init_v3,"axG",@progbits,nvtxDomainNameCategoryA_impl_init_v3,comdat
	.weak	nvtxDomainNameCategoryA_impl_init_v3
	.hidden	nvtxDomainNameCategoryA_impl_init_v3
	.type	nvtxDomainNameCategoryA_impl_init_v3, @function
nvtxDomainNameCategoryA_impl_init_v3:
.LFB8594:
	.cfi_startproc
	endbr64
	subq	$40, %rsp
	.cfi_def_cfa_offset 48
	movq	%rdi, 24(%rsp)
	movl	%esi, 20(%rsp)
	movq	%rdx, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	448+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L706
	movq	8(%rsp), %rdx
	movl	20(%rsp), %esi
	movq	24(%rsp), %rdi
	addq	$40, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L706:
	.cfi_restore_state
	addq	$40, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8594:
	.size	nvtxDomainNameCategoryA_impl_init_v3, .-nvtxDomainNameCategoryA_impl_init_v3
	.section	.text.nvtxDomainResourceDestroy_impl_init_v3,"axG",@progbits,nvtxDomainResourceDestroy_impl_init_v3,comdat
	.weak	nvtxDomainResourceDestroy_impl_init_v3
	.hidden	nvtxDomainResourceDestroy_impl_init_v3
	.type	nvtxDomainResourceDestroy_impl_init_v3, @function
nvtxDomainResourceDestroy_impl_init_v3:
.LFB8593:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	440+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L709
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L709:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8593:
	.size	nvtxDomainResourceDestroy_impl_init_v3, .-nvtxDomainResourceDestroy_impl_init_v3
	.section	.text.nvtxDomainResourceCreate_impl_init_v3,"axG",@progbits,nvtxDomainResourceCreate_impl_init_v3,comdat
	.weak	nvtxDomainResourceCreate_impl_init_v3
	.hidden	nvtxDomainResourceCreate_impl_init_v3
	.type	nvtxDomainResourceCreate_impl_init_v3, @function
nvtxDomainResourceCreate_impl_init_v3:
.LFB8592:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	432+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L713
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L713:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8592:
	.size	nvtxDomainResourceCreate_impl_init_v3, .-nvtxDomainResourceCreate_impl_init_v3
	.section	.text.nvtxDomainRangePop_impl_init_v3,"axG",@progbits,nvtxDomainRangePop_impl_init_v3,comdat
	.weak	nvtxDomainRangePop_impl_init_v3
	.hidden	nvtxDomainRangePop_impl_init_v3
	.type	nvtxDomainRangePop_impl_init_v3, @function
nvtxDomainRangePop_impl_init_v3:
.LFB8591:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	jmp	nvtxDomainRangePop
	.cfi_endproc
.LFE8591:
	.size	nvtxDomainRangePop_impl_init_v3, .-nvtxDomainRangePop_impl_init_v3
	.section	.text.nvtxDomainRangePushEx_impl_init_v3,"axG",@progbits,nvtxDomainRangePushEx_impl_init_v3,comdat
	.weak	nvtxDomainRangePushEx_impl_init_v3
	.hidden	nvtxDomainRangePushEx_impl_init_v3
	.type	nvtxDomainRangePushEx_impl_init_v3, @function
nvtxDomainRangePushEx_impl_init_v3:
.LFB8590:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	416+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L718
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L718:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8590:
	.size	nvtxDomainRangePushEx_impl_init_v3, .-nvtxDomainRangePushEx_impl_init_v3
	.section	.text.nvtxDomainRangeEnd_impl_init_v3,"axG",@progbits,nvtxDomainRangeEnd_impl_init_v3,comdat
	.weak	nvtxDomainRangeEnd_impl_init_v3
	.hidden	nvtxDomainRangeEnd_impl_init_v3
	.type	nvtxDomainRangeEnd_impl_init_v3, @function
nvtxDomainRangeEnd_impl_init_v3:
.LFB8589:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	408+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L720
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L720:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8589:
	.size	nvtxDomainRangeEnd_impl_init_v3, .-nvtxDomainRangeEnd_impl_init_v3
	.section	.text.nvtxDomainRangeStartEx_impl_init_v3,"axG",@progbits,nvtxDomainRangeStartEx_impl_init_v3,comdat
	.weak	nvtxDomainRangeStartEx_impl_init_v3
	.hidden	nvtxDomainRangeStartEx_impl_init_v3
	.type	nvtxDomainRangeStartEx_impl_init_v3, @function
nvtxDomainRangeStartEx_impl_init_v3:
.LFB8588:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	400+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L724
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L724:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8588:
	.size	nvtxDomainRangeStartEx_impl_init_v3, .-nvtxDomainRangeStartEx_impl_init_v3
	.section	.text.nvtxDomainMarkEx_impl_init_v3,"axG",@progbits,nvtxDomainMarkEx_impl_init_v3,comdat
	.weak	nvtxDomainMarkEx_impl_init_v3
	.hidden	nvtxDomainMarkEx_impl_init_v3
	.type	nvtxDomainMarkEx_impl_init_v3, @function
nvtxDomainMarkEx_impl_init_v3:
.LFB8587:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	392+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L726
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L726:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8587:
	.size	nvtxDomainMarkEx_impl_init_v3, .-nvtxDomainMarkEx_impl_init_v3
	.section	.text.nvtxNameCudaEventW_impl_init_v3,"axG",@progbits,nvtxNameCudaEventW_impl_init_v3,comdat
	.weak	nvtxNameCudaEventW_impl_init_v3
	.hidden	nvtxNameCudaEventW_impl_init_v3
	.type	nvtxNameCudaEventW_impl_init_v3, @function
nvtxNameCudaEventW_impl_init_v3:
.LFB8615:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	384+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L729
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L729:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8615:
	.size	nvtxNameCudaEventW_impl_init_v3, .-nvtxNameCudaEventW_impl_init_v3
	.section	.text.nvtxNameCudaEventA_impl_init_v3,"axG",@progbits,nvtxNameCudaEventA_impl_init_v3,comdat
	.weak	nvtxNameCudaEventA_impl_init_v3
	.hidden	nvtxNameCudaEventA_impl_init_v3
	.type	nvtxNameCudaEventA_impl_init_v3, @function
nvtxNameCudaEventA_impl_init_v3:
.LFB8614:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	376+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L732
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L732:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8614:
	.size	nvtxNameCudaEventA_impl_init_v3, .-nvtxNameCudaEventA_impl_init_v3
	.section	.text.nvtxNameCudaStreamW_impl_init_v3,"axG",@progbits,nvtxNameCudaStreamW_impl_init_v3,comdat
	.weak	nvtxNameCudaStreamW_impl_init_v3
	.hidden	nvtxNameCudaStreamW_impl_init_v3
	.type	nvtxNameCudaStreamW_impl_init_v3, @function
nvtxNameCudaStreamW_impl_init_v3:
.LFB8613:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	368+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L735
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L735:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8613:
	.size	nvtxNameCudaStreamW_impl_init_v3, .-nvtxNameCudaStreamW_impl_init_v3
	.section	.text.nvtxNameCudaStreamA_impl_init_v3,"axG",@progbits,nvtxNameCudaStreamA_impl_init_v3,comdat
	.weak	nvtxNameCudaStreamA_impl_init_v3
	.hidden	nvtxNameCudaStreamA_impl_init_v3
	.type	nvtxNameCudaStreamA_impl_init_v3, @function
nvtxNameCudaStreamA_impl_init_v3:
.LFB8612:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	360+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L738
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L738:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8612:
	.size	nvtxNameCudaStreamA_impl_init_v3, .-nvtxNameCudaStreamA_impl_init_v3
	.section	.text.nvtxNameCudaDeviceW_impl_init_v3,"axG",@progbits,nvtxNameCudaDeviceW_impl_init_v3,comdat
	.weak	nvtxNameCudaDeviceW_impl_init_v3
	.hidden	nvtxNameCudaDeviceW_impl_init_v3
	.type	nvtxNameCudaDeviceW_impl_init_v3, @function
nvtxNameCudaDeviceW_impl_init_v3:
.LFB8611:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	352+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L741
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L741:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8611:
	.size	nvtxNameCudaDeviceW_impl_init_v3, .-nvtxNameCudaDeviceW_impl_init_v3
	.section	.text.nvtxNameCudaDeviceA_impl_init_v3,"axG",@progbits,nvtxNameCudaDeviceA_impl_init_v3,comdat
	.weak	nvtxNameCudaDeviceA_impl_init_v3
	.hidden	nvtxNameCudaDeviceA_impl_init_v3
	.type	nvtxNameCudaDeviceA_impl_init_v3, @function
nvtxNameCudaDeviceA_impl_init_v3:
.LFB8610:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	344+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L744
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L744:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8610:
	.size	nvtxNameCudaDeviceA_impl_init_v3, .-nvtxNameCudaDeviceA_impl_init_v3
	.section	.text.nvtxNameClEventW_impl_init_v3,"axG",@progbits,nvtxNameClEventW_impl_init_v3,comdat
	.weak	nvtxNameClEventW_impl_init_v3
	.hidden	nvtxNameClEventW_impl_init_v3
	.type	nvtxNameClEventW_impl_init_v3, @function
nvtxNameClEventW_impl_init_v3:
.LFB8629:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	336+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L747
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L747:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8629:
	.size	nvtxNameClEventW_impl_init_v3, .-nvtxNameClEventW_impl_init_v3
	.section	.text.nvtxNameClEventA_impl_init_v3,"axG",@progbits,nvtxNameClEventA_impl_init_v3,comdat
	.weak	nvtxNameClEventA_impl_init_v3
	.hidden	nvtxNameClEventA_impl_init_v3
	.type	nvtxNameClEventA_impl_init_v3, @function
nvtxNameClEventA_impl_init_v3:
.LFB8628:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	328+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L750
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L750:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8628:
	.size	nvtxNameClEventA_impl_init_v3, .-nvtxNameClEventA_impl_init_v3
	.section	.text.nvtxNameClProgramW_impl_init_v3,"axG",@progbits,nvtxNameClProgramW_impl_init_v3,comdat
	.weak	nvtxNameClProgramW_impl_init_v3
	.hidden	nvtxNameClProgramW_impl_init_v3
	.type	nvtxNameClProgramW_impl_init_v3, @function
nvtxNameClProgramW_impl_init_v3:
.LFB8627:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	320+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L753
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L753:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8627:
	.size	nvtxNameClProgramW_impl_init_v3, .-nvtxNameClProgramW_impl_init_v3
	.section	.text.nvtxNameClProgramA_impl_init_v3,"axG",@progbits,nvtxNameClProgramA_impl_init_v3,comdat
	.weak	nvtxNameClProgramA_impl_init_v3
	.hidden	nvtxNameClProgramA_impl_init_v3
	.type	nvtxNameClProgramA_impl_init_v3, @function
nvtxNameClProgramA_impl_init_v3:
.LFB8626:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	312+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L756
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L756:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8626:
	.size	nvtxNameClProgramA_impl_init_v3, .-nvtxNameClProgramA_impl_init_v3
	.section	.text.nvtxNameClSamplerW_impl_init_v3,"axG",@progbits,nvtxNameClSamplerW_impl_init_v3,comdat
	.weak	nvtxNameClSamplerW_impl_init_v3
	.hidden	nvtxNameClSamplerW_impl_init_v3
	.type	nvtxNameClSamplerW_impl_init_v3, @function
nvtxNameClSamplerW_impl_init_v3:
.LFB8625:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	304+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L759
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L759:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8625:
	.size	nvtxNameClSamplerW_impl_init_v3, .-nvtxNameClSamplerW_impl_init_v3
	.section	.text.nvtxNameClSamplerA_impl_init_v3,"axG",@progbits,nvtxNameClSamplerA_impl_init_v3,comdat
	.weak	nvtxNameClSamplerA_impl_init_v3
	.hidden	nvtxNameClSamplerA_impl_init_v3
	.type	nvtxNameClSamplerA_impl_init_v3, @function
nvtxNameClSamplerA_impl_init_v3:
.LFB8624:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	296+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L762
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L762:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8624:
	.size	nvtxNameClSamplerA_impl_init_v3, .-nvtxNameClSamplerA_impl_init_v3
	.section	.text.nvtxNameClMemObjectW_impl_init_v3,"axG",@progbits,nvtxNameClMemObjectW_impl_init_v3,comdat
	.weak	nvtxNameClMemObjectW_impl_init_v3
	.hidden	nvtxNameClMemObjectW_impl_init_v3
	.type	nvtxNameClMemObjectW_impl_init_v3, @function
nvtxNameClMemObjectW_impl_init_v3:
.LFB8623:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	288+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L765
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L765:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8623:
	.size	nvtxNameClMemObjectW_impl_init_v3, .-nvtxNameClMemObjectW_impl_init_v3
	.section	.text.nvtxNameClMemObjectA_impl_init_v3,"axG",@progbits,nvtxNameClMemObjectA_impl_init_v3,comdat
	.weak	nvtxNameClMemObjectA_impl_init_v3
	.hidden	nvtxNameClMemObjectA_impl_init_v3
	.type	nvtxNameClMemObjectA_impl_init_v3, @function
nvtxNameClMemObjectA_impl_init_v3:
.LFB8622:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	280+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L768
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L768:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8622:
	.size	nvtxNameClMemObjectA_impl_init_v3, .-nvtxNameClMemObjectA_impl_init_v3
	.section	.text.nvtxNameClCommandQueueW_impl_init_v3,"axG",@progbits,nvtxNameClCommandQueueW_impl_init_v3,comdat
	.weak	nvtxNameClCommandQueueW_impl_init_v3
	.hidden	nvtxNameClCommandQueueW_impl_init_v3
	.type	nvtxNameClCommandQueueW_impl_init_v3, @function
nvtxNameClCommandQueueW_impl_init_v3:
.LFB8621:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	272+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L771
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L771:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8621:
	.size	nvtxNameClCommandQueueW_impl_init_v3, .-nvtxNameClCommandQueueW_impl_init_v3
	.section	.text.nvtxNameClCommandQueueA_impl_init_v3,"axG",@progbits,nvtxNameClCommandQueueA_impl_init_v3,comdat
	.weak	nvtxNameClCommandQueueA_impl_init_v3
	.hidden	nvtxNameClCommandQueueA_impl_init_v3
	.type	nvtxNameClCommandQueueA_impl_init_v3, @function
nvtxNameClCommandQueueA_impl_init_v3:
.LFB8620:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	264+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L774
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L774:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8620:
	.size	nvtxNameClCommandQueueA_impl_init_v3, .-nvtxNameClCommandQueueA_impl_init_v3
	.section	.text.nvtxNameClContextW_impl_init_v3,"axG",@progbits,nvtxNameClContextW_impl_init_v3,comdat
	.weak	nvtxNameClContextW_impl_init_v3
	.hidden	nvtxNameClContextW_impl_init_v3
	.type	nvtxNameClContextW_impl_init_v3, @function
nvtxNameClContextW_impl_init_v3:
.LFB8619:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	256+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L777
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L777:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8619:
	.size	nvtxNameClContextW_impl_init_v3, .-nvtxNameClContextW_impl_init_v3
	.section	.text.nvtxNameClContextA_impl_init_v3,"axG",@progbits,nvtxNameClContextA_impl_init_v3,comdat
	.weak	nvtxNameClContextA_impl_init_v3
	.hidden	nvtxNameClContextA_impl_init_v3
	.type	nvtxNameClContextA_impl_init_v3, @function
nvtxNameClContextA_impl_init_v3:
.LFB8618:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	248+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L780
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L780:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8618:
	.size	nvtxNameClContextA_impl_init_v3, .-nvtxNameClContextA_impl_init_v3
	.section	.text.nvtxNameClDeviceW_impl_init_v3,"axG",@progbits,nvtxNameClDeviceW_impl_init_v3,comdat
	.weak	nvtxNameClDeviceW_impl_init_v3
	.hidden	nvtxNameClDeviceW_impl_init_v3
	.type	nvtxNameClDeviceW_impl_init_v3, @function
nvtxNameClDeviceW_impl_init_v3:
.LFB8617:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	240+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L783
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L783:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8617:
	.size	nvtxNameClDeviceW_impl_init_v3, .-nvtxNameClDeviceW_impl_init_v3
	.section	.text.nvtxNameClDeviceA_impl_init_v3,"axG",@progbits,nvtxNameClDeviceA_impl_init_v3,comdat
	.weak	nvtxNameClDeviceA_impl_init_v3
	.hidden	nvtxNameClDeviceA_impl_init_v3
	.type	nvtxNameClDeviceA_impl_init_v3, @function
nvtxNameClDeviceA_impl_init_v3:
.LFB8616:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	232+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L786
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L786:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8616:
	.size	nvtxNameClDeviceA_impl_init_v3, .-nvtxNameClDeviceA_impl_init_v3
	.section	.text.nvtxNameCuEventW_impl_init_v3,"axG",@progbits,nvtxNameCuEventW_impl_init_v3,comdat
	.weak	nvtxNameCuEventW_impl_init_v3
	.hidden	nvtxNameCuEventW_impl_init_v3
	.type	nvtxNameCuEventW_impl_init_v3, @function
nvtxNameCuEventW_impl_init_v3:
.LFB8609:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	224+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L789
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L789:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8609:
	.size	nvtxNameCuEventW_impl_init_v3, .-nvtxNameCuEventW_impl_init_v3
	.section	.text.nvtxNameCuEventA_impl_init_v3,"axG",@progbits,nvtxNameCuEventA_impl_init_v3,comdat
	.weak	nvtxNameCuEventA_impl_init_v3
	.hidden	nvtxNameCuEventA_impl_init_v3
	.type	nvtxNameCuEventA_impl_init_v3, @function
nvtxNameCuEventA_impl_init_v3:
.LFB8608:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	216+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L792
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L792:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8608:
	.size	nvtxNameCuEventA_impl_init_v3, .-nvtxNameCuEventA_impl_init_v3
	.section	.text.nvtxNameCuStreamW_impl_init_v3,"axG",@progbits,nvtxNameCuStreamW_impl_init_v3,comdat
	.weak	nvtxNameCuStreamW_impl_init_v3
	.hidden	nvtxNameCuStreamW_impl_init_v3
	.type	nvtxNameCuStreamW_impl_init_v3, @function
nvtxNameCuStreamW_impl_init_v3:
.LFB8607:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	208+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L795
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L795:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8607:
	.size	nvtxNameCuStreamW_impl_init_v3, .-nvtxNameCuStreamW_impl_init_v3
	.section	.text.nvtxNameCuStreamA_impl_init_v3,"axG",@progbits,nvtxNameCuStreamA_impl_init_v3,comdat
	.weak	nvtxNameCuStreamA_impl_init_v3
	.hidden	nvtxNameCuStreamA_impl_init_v3
	.type	nvtxNameCuStreamA_impl_init_v3, @function
nvtxNameCuStreamA_impl_init_v3:
.LFB8606:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	200+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L798
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L798:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8606:
	.size	nvtxNameCuStreamA_impl_init_v3, .-nvtxNameCuStreamA_impl_init_v3
	.section	.text.nvtxNameCuContextW_impl_init_v3,"axG",@progbits,nvtxNameCuContextW_impl_init_v3,comdat
	.weak	nvtxNameCuContextW_impl_init_v3
	.hidden	nvtxNameCuContextW_impl_init_v3
	.type	nvtxNameCuContextW_impl_init_v3, @function
nvtxNameCuContextW_impl_init_v3:
.LFB8605:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	192+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L801
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L801:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8605:
	.size	nvtxNameCuContextW_impl_init_v3, .-nvtxNameCuContextW_impl_init_v3
	.section	.text.nvtxNameCuContextA_impl_init_v3,"axG",@progbits,nvtxNameCuContextA_impl_init_v3,comdat
	.weak	nvtxNameCuContextA_impl_init_v3
	.hidden	nvtxNameCuContextA_impl_init_v3
	.type	nvtxNameCuContextA_impl_init_v3, @function
nvtxNameCuContextA_impl_init_v3:
.LFB8604:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	184+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L804
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L804:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8604:
	.size	nvtxNameCuContextA_impl_init_v3, .-nvtxNameCuContextA_impl_init_v3
	.section	.text.nvtxNameCuDeviceW_impl_init_v3,"axG",@progbits,nvtxNameCuDeviceW_impl_init_v3,comdat
	.weak	nvtxNameCuDeviceW_impl_init_v3
	.hidden	nvtxNameCuDeviceW_impl_init_v3
	.type	nvtxNameCuDeviceW_impl_init_v3, @function
nvtxNameCuDeviceW_impl_init_v3:
.LFB8603:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	176+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L807
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L807:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8603:
	.size	nvtxNameCuDeviceW_impl_init_v3, .-nvtxNameCuDeviceW_impl_init_v3
	.section	.text.nvtxNameCuDeviceA_impl_init_v3,"axG",@progbits,nvtxNameCuDeviceA_impl_init_v3,comdat
	.weak	nvtxNameCuDeviceA_impl_init_v3
	.hidden	nvtxNameCuDeviceA_impl_init_v3
	.type	nvtxNameCuDeviceA_impl_init_v3, @function
nvtxNameCuDeviceA_impl_init_v3:
.LFB8602:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	168+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L810
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L810:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8602:
	.size	nvtxNameCuDeviceA_impl_init_v3, .-nvtxNameCuDeviceA_impl_init_v3
	.section	.text.nvtxNameOsThreadW_impl_init_v3,"axG",@progbits,nvtxNameOsThreadW_impl_init_v3,comdat
	.weak	nvtxNameOsThreadW_impl_init_v3
	.hidden	nvtxNameOsThreadW_impl_init_v3
	.type	nvtxNameOsThreadW_impl_init_v3, @function
nvtxNameOsThreadW_impl_init_v3:
.LFB8586:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	160+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L813
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L813:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8586:
	.size	nvtxNameOsThreadW_impl_init_v3, .-nvtxNameOsThreadW_impl_init_v3
	.section	.text.nvtxNameOsThreadA_impl_init_v3,"axG",@progbits,nvtxNameOsThreadA_impl_init_v3,comdat
	.weak	nvtxNameOsThreadA_impl_init_v3
	.hidden	nvtxNameOsThreadA_impl_init_v3
	.type	nvtxNameOsThreadA_impl_init_v3, @function
nvtxNameOsThreadA_impl_init_v3:
.LFB8585:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	152+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L816
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L816:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8585:
	.size	nvtxNameOsThreadA_impl_init_v3, .-nvtxNameOsThreadA_impl_init_v3
	.section	.text.nvtxNameCategoryW_impl_init_v3,"axG",@progbits,nvtxNameCategoryW_impl_init_v3,comdat
	.weak	nvtxNameCategoryW_impl_init_v3
	.hidden	nvtxNameCategoryW_impl_init_v3
	.type	nvtxNameCategoryW_impl_init_v3, @function
nvtxNameCategoryW_impl_init_v3:
.LFB8584:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	144+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L819
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L819:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8584:
	.size	nvtxNameCategoryW_impl_init_v3, .-nvtxNameCategoryW_impl_init_v3
	.section	.text.nvtxNameCategoryA_impl_init_v3,"axG",@progbits,nvtxNameCategoryA_impl_init_v3,comdat
	.weak	nvtxNameCategoryA_impl_init_v3
	.hidden	nvtxNameCategoryA_impl_init_v3
	.type	nvtxNameCategoryA_impl_init_v3, @function
nvtxNameCategoryA_impl_init_v3:
.LFB8583:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	%edi, 12(%rsp)
	movq	%rsi, (%rsp)
	call	nvtxInitOnce_v3
	movq	136+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L822
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L822:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8583:
	.size	nvtxNameCategoryA_impl_init_v3, .-nvtxNameCategoryA_impl_init_v3
	.section	.text.nvtxRangePop_impl_init_v3,"axG",@progbits,nvtxRangePop_impl_init_v3,comdat
	.weak	nvtxRangePop_impl_init_v3
	.hidden	nvtxRangePop_impl_init_v3
	.type	nvtxRangePop_impl_init_v3, @function
nvtxRangePop_impl_init_v3:
.LFB8582:
	.cfi_startproc
	endbr64
	pushq	%rsi
	.cfi_def_cfa_offset 16
	call	nvtxInitOnce_v3
	movq	128+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L826
	popq	%rcx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L826:
	.cfi_restore_state
	movl	$-2, %eax
	popq	%rdx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8582:
	.size	nvtxRangePop_impl_init_v3, .-nvtxRangePop_impl_init_v3
	.section	.text.nvtxRangePushW_impl_init_v3,"axG",@progbits,nvtxRangePushW_impl_init_v3,comdat
	.weak	nvtxRangePushW_impl_init_v3
	.hidden	nvtxRangePushW_impl_init_v3
	.type	nvtxRangePushW_impl_init_v3, @function
nvtxRangePushW_impl_init_v3:
.LFB8581:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	120+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L829
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L829:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8581:
	.size	nvtxRangePushW_impl_init_v3, .-nvtxRangePushW_impl_init_v3
	.section	.text.nvtxRangePushA_impl_init_v3,"axG",@progbits,nvtxRangePushA_impl_init_v3,comdat
	.weak	nvtxRangePushA_impl_init_v3
	.hidden	nvtxRangePushA_impl_init_v3
	.type	nvtxRangePushA_impl_init_v3, @function
nvtxRangePushA_impl_init_v3:
.LFB8580:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	112+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L832
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L832:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8580:
	.size	nvtxRangePushA_impl_init_v3, .-nvtxRangePushA_impl_init_v3
	.section	.text.nvtxRangePushEx_impl_init_v3,"axG",@progbits,nvtxRangePushEx_impl_init_v3,comdat
	.weak	nvtxRangePushEx_impl_init_v3
	.hidden	nvtxRangePushEx_impl_init_v3
	.type	nvtxRangePushEx_impl_init_v3, @function
nvtxRangePushEx_impl_init_v3:
.LFB8579:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	104+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L835
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L835:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8579:
	.size	nvtxRangePushEx_impl_init_v3, .-nvtxRangePushEx_impl_init_v3
	.section	.text.nvtxRangeEnd_impl_init_v3,"axG",@progbits,nvtxRangeEnd_impl_init_v3,comdat
	.weak	nvtxRangeEnd_impl_init_v3
	.hidden	nvtxRangeEnd_impl_init_v3
	.type	nvtxRangeEnd_impl_init_v3, @function
nvtxRangeEnd_impl_init_v3:
.LFB8578:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	96+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L837
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L837:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8578:
	.size	nvtxRangeEnd_impl_init_v3, .-nvtxRangeEnd_impl_init_v3
	.section	.text.nvtxRangeStartW_impl_init_v3,"axG",@progbits,nvtxRangeStartW_impl_init_v3,comdat
	.weak	nvtxRangeStartW_impl_init_v3
	.hidden	nvtxRangeStartW_impl_init_v3
	.type	nvtxRangeStartW_impl_init_v3, @function
nvtxRangeStartW_impl_init_v3:
.LFB8577:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	88+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L841
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L841:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8577:
	.size	nvtxRangeStartW_impl_init_v3, .-nvtxRangeStartW_impl_init_v3
	.section	.text.nvtxRangeStartA_impl_init_v3,"axG",@progbits,nvtxRangeStartA_impl_init_v3,comdat
	.weak	nvtxRangeStartA_impl_init_v3
	.hidden	nvtxRangeStartA_impl_init_v3
	.type	nvtxRangeStartA_impl_init_v3, @function
nvtxRangeStartA_impl_init_v3:
.LFB8576:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	80+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L844
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L844:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8576:
	.size	nvtxRangeStartA_impl_init_v3, .-nvtxRangeStartA_impl_init_v3
	.section	.text.nvtxRangeStartEx_impl_init_v3,"axG",@progbits,nvtxRangeStartEx_impl_init_v3,comdat
	.weak	nvtxRangeStartEx_impl_init_v3
	.hidden	nvtxRangeStartEx_impl_init_v3
	.type	nvtxRangeStartEx_impl_init_v3, @function
nvtxRangeStartEx_impl_init_v3:
.LFB8575:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	72+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L847
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L847:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8575:
	.size	nvtxRangeStartEx_impl_init_v3, .-nvtxRangeStartEx_impl_init_v3
	.section	.text.nvtxMarkW_impl_init_v3,"axG",@progbits,nvtxMarkW_impl_init_v3,comdat
	.weak	nvtxMarkW_impl_init_v3
	.hidden	nvtxMarkW_impl_init_v3
	.type	nvtxMarkW_impl_init_v3, @function
nvtxMarkW_impl_init_v3:
.LFB8574:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	64+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L849
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L849:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8574:
	.size	nvtxMarkW_impl_init_v3, .-nvtxMarkW_impl_init_v3
	.section	.text.nvtxMarkA_impl_init_v3,"axG",@progbits,nvtxMarkA_impl_init_v3,comdat
	.weak	nvtxMarkA_impl_init_v3
	.hidden	nvtxMarkA_impl_init_v3
	.type	nvtxMarkA_impl_init_v3, @function
nvtxMarkA_impl_init_v3:
.LFB8573:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	56+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L852
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L852:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8573:
	.size	nvtxMarkA_impl_init_v3, .-nvtxMarkA_impl_init_v3
	.section	.text.nvtxMarkEx_impl_init_v3,"axG",@progbits,nvtxMarkEx_impl_init_v3,comdat
	.weak	nvtxMarkEx_impl_init_v3
	.hidden	nvtxMarkEx_impl_init_v3
	.type	nvtxMarkEx_impl_init_v3, @function
nvtxMarkEx_impl_init_v3:
.LFB8572:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%rdi, 8(%rsp)
	call	nvtxInitOnce_v3
	movq	48+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L855
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L855:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8572:
	.size	nvtxMarkEx_impl_init_v3, .-nvtxMarkEx_impl_init_v3
	.section	.rodata._Z9gpuAssert9cudaErrorPKcib.str1.1,"aMS",@progbits,1
.LC11:
	.string	"GPUassert: %s %s %d\n"
	.section	.text._Z9gpuAssert9cudaErrorPKcib,"axG",@progbits,_Z9gpuAssert9cudaErrorPKcib,comdat
	.weak	_Z9gpuAssert9cudaErrorPKcib
	.type	_Z9gpuAssert9cudaErrorPKcib, @function
_Z9gpuAssert9cudaErrorPKcib:
.LFB11210:
	.cfi_startproc
	endbr64
	testl	%edi, %edi
	je	.L864
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movl	%ecx, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	movl	%edi, %ebx
	subq	$24, %rsp
	.cfi_def_cfa_offset 48
	movl	%edx, 12(%rsp)
	movq	%rsi, (%rsp)
	call	cudaGetErrorString@PLT
	movl	12(%rsp), %r9d
	movq	(%rsp), %r8
	leaq	.LC11(%rip), %rdx
	movq	stderr(%rip), %rdi
	movq	%rax, %rcx
	movl	$2, %esi
	xorl	%eax, %eax
	call	__fprintf_chk@PLT
	testb	%bpl, %bpl
	je	.L858
	movl	%ebx, %edi
	call	exit@PLT
.L858:
	addq	$24, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
.L864:
	.cfi_restore 3
	.cfi_restore 6
	ret
	.cfi_endproc
.LFE11210:
	.size	_Z9gpuAssert9cudaErrorPKcib, .-_Z9gpuAssert9cudaErrorPKcib
	.text
	.globl	_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j
	.type	_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j, @function
_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j:
.LFB11245:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movq	%rdi, 8(%rsp)
	leaq	32(%rsp), %rcx
	leaq	40(%rsp), %rdi
	movl	%edx, 4(%rsp)
	leaq	24(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	8(%rsp), %rax
	movq	%rsi, 16(%rsp)
	leaq	52(%rsp), %rsi
	movq	%rax, 64(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 72(%rsp)
	leaq	4(%rsp), %rax
	movq	%rax, 80(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 40(%rsp)
	movl	$1, 48(%rsp)
	movq	%rax, 52(%rsp)
	movl	$1, 60(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L867
	pushq	32(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_Z19unpack_original_texyP6float2j(%rip), %rdi
	pushq	32(%rsp)
	.cfi_def_cfa_offset 128
	movq	68(%rsp), %rcx
	movl	76(%rsp), %r8d
	movq	56(%rsp), %rsi
	movl	64(%rsp), %edx
	leaq	80(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 120
	popq	%rdx
	.cfi_def_cfa_offset 112
.L867:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L869
	call	__stack_chk_fail@PLT
.L869:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11245:
	.size	_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j, .-_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j
	.globl	_Z19unpack_original_texyP6float2j
	.type	_Z19unpack_original_texyP6float2j, @function
_Z19unpack_original_texyP6float2j:
.LFB11246:
	.cfi_startproc
	endbr64
	jmp	_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j
	.cfi_endproc
.LFE11246:
	.size	_Z19unpack_original_texyP6float2j, .-_Z19unpack_original_texyP6float2j
	.globl	_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2
	.type	_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2, @function
_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2:
.LFB11247:
	.cfi_startproc
	endbr64
	subq	$88, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
	movq	%rsp, %rax
	movq	%rdi, (%rsp)
	leaq	24(%rsp), %rcx
	movq	%rax, 56(%rsp)
	leaq	8(%rsp), %rax
	leaq	16(%rsp), %rdx
	movq	%rsi, 8(%rsp)
	leaq	32(%rsp), %rdi
	leaq	44(%rsp), %rsi
	movq	%rax, 64(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 32(%rsp)
	movl	$1, 40(%rsp)
	movq	%rax, 44(%rsp)
	movl	$1, 52(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L872
	pushq	24(%rsp)
	.cfi_def_cfa_offset 104
	leaq	_Z10unpack_newPKjP6float2(%rip), %rdi
	pushq	24(%rsp)
	.cfi_def_cfa_offset 112
	movq	60(%rsp), %rcx
	movl	68(%rsp), %r8d
	movq	48(%rsp), %rsi
	movl	56(%rsp), %edx
	leaq	72(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 104
	popq	%rdx
	.cfi_def_cfa_offset 96
.L872:
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L874
	call	__stack_chk_fail@PLT
.L874:
	addq	$88, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11247:
	.size	_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2, .-_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2
	.globl	_Z10unpack_newPKjP6float2
	.type	_Z10unpack_newPKjP6float2, @function
_Z10unpack_newPKjP6float2:
.LFB11248:
	.cfi_startproc
	endbr64
	jmp	_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2
	.cfi_endproc
.LFE11248:
	.size	_Z10unpack_newPKjP6float2, .-_Z10unpack_newPKjP6float2
	.globl	_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2
	.type	_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2, @function
_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2:
.LFB11249:
	.cfi_startproc
	endbr64
	subq	$88, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
	movq	%rsp, %rax
	movq	%rdi, (%rsp)
	leaq	24(%rsp), %rcx
	movq	%rax, 56(%rsp)
	leaq	8(%rsp), %rax
	leaq	16(%rsp), %rdx
	movq	%rsi, 8(%rsp)
	leaq	32(%rsp), %rdi
	leaq	44(%rsp), %rsi
	movq	%rax, 64(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 32(%rsp)
	movl	$1, 40(%rsp)
	movq	%rax, 44(%rsp)
	movl	$1, 52(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L877
	pushq	24(%rsp)
	.cfi_def_cfa_offset 104
	leaq	_Z15unpack_new_int2P4int2P6float2(%rip), %rdi
	pushq	24(%rsp)
	.cfi_def_cfa_offset 112
	movq	60(%rsp), %rcx
	movl	68(%rsp), %r8d
	movq	48(%rsp), %rsi
	movl	56(%rsp), %edx
	leaq	72(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 104
	popq	%rdx
	.cfi_def_cfa_offset 96
.L877:
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L879
	call	__stack_chk_fail@PLT
.L879:
	addq	$88, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11249:
	.size	_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2, .-_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2
	.globl	_Z15unpack_new_int2P4int2P6float2
	.type	_Z15unpack_new_int2P4int2P6float2, @function
_Z15unpack_new_int2P4int2P6float2:
.LFB11250:
	.cfi_startproc
	endbr64
	jmp	_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2
	.cfi_endproc
.LFE11250:
	.size	_Z15unpack_new_int2P4int2P6float2, .-_Z15unpack_new_int2P4int2P6float2
	.globl	_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2
	.type	_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2, @function
_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2:
.LFB11251:
	.cfi_startproc
	endbr64
	subq	$88, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
	movq	%rsp, %rax
	movq	%rdi, (%rsp)
	leaq	24(%rsp), %rcx
	movq	%rax, 56(%rsp)
	leaq	8(%rsp), %rax
	leaq	16(%rsp), %rdx
	movq	%rsi, 8(%rsp)
	leaq	32(%rsp), %rdi
	leaq	44(%rsp), %rsi
	movq	%rax, 64(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 32(%rsp)
	movl	$1, 40(%rsp)
	movq	%rax, 44(%rsp)
	movl	$1, 52(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L882
	pushq	24(%rsp)
	.cfi_def_cfa_offset 104
	leaq	_Z10unpack_altPKjP6float2(%rip), %rdi
	pushq	24(%rsp)
	.cfi_def_cfa_offset 112
	movq	60(%rsp), %rcx
	movl	68(%rsp), %r8d
	movq	48(%rsp), %rsi
	movl	56(%rsp), %edx
	leaq	72(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 104
	popq	%rdx
	.cfi_def_cfa_offset 96
.L882:
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L884
	call	__stack_chk_fail@PLT
.L884:
	addq	$88, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11251:
	.size	_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2, .-_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2
	.globl	_Z10unpack_altPKjP6float2
	.type	_Z10unpack_altPKjP6float2, @function
_Z10unpack_altPKjP6float2:
.LFB11252:
	.cfi_startproc
	endbr64
	jmp	_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2
	.cfi_endproc
.LFE11252:
	.size	_Z10unpack_altPKjP6float2, .-_Z10unpack_altPKjP6float2
	.globl	_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf
	.type	_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf, @function
_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf:
.LFB11253:
	.cfi_startproc
	endbr64
	subq	$88, %rsp
	.cfi_def_cfa_offset 96
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
	movq	%rsp, %rax
	movq	%rdi, (%rsp)
	leaq	24(%rsp), %rcx
	movq	%rax, 56(%rsp)
	leaq	8(%rsp), %rax
	leaq	16(%rsp), %rdx
	movq	%rsi, 8(%rsp)
	leaq	32(%rsp), %rdi
	leaq	44(%rsp), %rsi
	movq	%rax, 64(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 32(%rsp)
	movl	$1, 40(%rsp)
	movq	%rax, 44(%rsp)
	movl	$1, 52(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L887
	pushq	24(%rsp)
	.cfi_def_cfa_offset 104
	leaq	_Z27powertimefreq_new_hardcodedP6float2Pf(%rip), %rdi
	pushq	24(%rsp)
	.cfi_def_cfa_offset 112
	movq	60(%rsp), %rcx
	movl	68(%rsp), %r8d
	movq	48(%rsp), %rsi
	movl	56(%rsp), %edx
	leaq	72(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 104
	popq	%rdx
	.cfi_def_cfa_offset 96
.L887:
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L889
	call	__stack_chk_fail@PLT
.L889:
	addq	$88, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11253:
	.size	_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf, .-_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf
	.globl	_Z27powertimefreq_new_hardcodedP6float2Pf
	.type	_Z27powertimefreq_new_hardcodedP6float2Pf, @function
_Z27powertimefreq_new_hardcodedP6float2Pf:
.LFB11254:
	.cfi_startproc
	endbr64
	jmp	_Z55__device_stub__Z27powertimefreq_new_hardcodedP6float2PfP6float2Pf
	.cfi_endproc
.LFE11254:
	.size	_Z27powertimefreq_new_hardcodedP6float2Pf, .-_Z27powertimefreq_new_hardcodedP6float2Pf
	.globl	_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs
	.type	_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs, @function
_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs:
.LFB11255:
	.cfi_startproc
	endbr64
	subq	$120, %rsp
	.cfi_def_cfa_offset 128
	movw	%dx, 12(%rsp)
	leaq	48(%rsp), %rcx
	leaq	40(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 104(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	56(%rsp), %rdi
	movq	%rax, 80(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	12(%rsp), %rax
	movq	%rsi, 32(%rsp)
	leaq	68(%rsp), %rsi
	movq	%rax, 96(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 56(%rsp)
	movl	$1, 64(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L892
	pushq	48(%rsp)
	.cfi_def_cfa_offset 136
	leaq	_Z19DetectScrunchKernelP6float2Pfs(%rip), %rdi
	pushq	48(%rsp)
	.cfi_def_cfa_offset 144
	movq	84(%rsp), %rcx
	movl	92(%rsp), %r8d
	movq	72(%rsp), %rsi
	movl	80(%rsp), %edx
	leaq	96(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 136
	popq	%rdx
	.cfi_def_cfa_offset 128
.L892:
	movq	104(%rsp), %rax
	subq	%fs:40, %rax
	je	.L894
	call	__stack_chk_fail@PLT
.L894:
	addq	$120, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11255:
	.size	_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs, .-_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs
	.globl	_Z19DetectScrunchKernelP6float2Pfs
	.type	_Z19DetectScrunchKernelP6float2Pfs, @function
_Z19DetectScrunchKernelP6float2Pfs:
.LFB11256:
	.cfi_startproc
	endbr64
	movswl	%dx, %edx
	jmp	_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs
	.cfi_endproc
.LFE11256:
	.size	_Z19DetectScrunchKernelP6float2Pfs, .-_Z19DetectScrunchKernelP6float2Pfs
	.globl	_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.type	_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, @function
_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_:
.LFB11257:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movw	%dx, 28(%rsp)
	leaq	56(%rsp), %rdx
	movq	%r8, 8(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rax, 96(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	28(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	8(%rsp), %rax
	movq	%rsi, 48(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movl	$1, 80(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L897
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_(%rip), %rdi
	pushq	64(%rsp)
	.cfi_def_cfa_offset 176
	movq	100(%rsp), %rcx
	movl	108(%rsp), %r8d
	movq	88(%rsp), %rsi
	movl	96(%rsp), %edx
	leaq	112(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L897:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L899
	call	__stack_chk_fail@PLT
.L899:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11257:
	.size	_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, .-_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.globl	_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_
	.type	_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_, @function
_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_:
.LFB11258:
	.cfi_startproc
	endbr64
	movswl	%dx, %edx
	jmp	_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.cfi_endproc
.LFE11258:
	.size	_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_, .-_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_
	.globl	_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.type	_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, @function
_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_:
.LFB11259:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movw	%dx, 28(%rsp)
	leaq	56(%rsp), %rdx
	movq	%r8, 8(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rax, 96(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	28(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	8(%rsp), %rax
	movq	%rsi, 48(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movl	$1, 80(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L902
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_(%rip), %rdi
	pushq	64(%rsp)
	.cfi_def_cfa_offset 176
	movq	100(%rsp), %rcx
	movl	108(%rsp), %r8d
	movq	88(%rsp), %rsi
	movl	96(%rsp), %edx
	leaq	112(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L902:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L904
	call	__stack_chk_fail@PLT
.L904:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11259:
	.size	_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, .-_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.globl	_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_
	.type	_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_, @function
_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_:
.LFB11260:
	.cfi_startproc
	endbr64
	movswl	%dx, %edx
	jmp	_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.cfi_endproc
.LFE11260:
	.size	_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_, .-_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_
	.globl	_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.type	_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, @function
_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_:
.LFB11261:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movw	%dx, 28(%rsp)
	leaq	56(%rsp), %rdx
	movq	%r8, 8(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rax, 96(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	28(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	8(%rsp), %rax
	movq	%rsi, 48(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movl	$1, 80(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L907
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_(%rip), %rdi
	pushq	64(%rsp)
	.cfi_def_cfa_offset 176
	movq	100(%rsp), %rcx
	movl	108(%rsp), %r8d
	movq	88(%rsp), %rsi
	movl	96(%rsp), %edx
	leaq	112(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L907:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L909
	call	__stack_chk_fail@PLT
.L909:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11261:
	.size	_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_, .-_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.globl	_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_
	.type	_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_, @function
_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_:
.LFB11262:
	.cfi_startproc
	endbr64
	movswl	%dx, %edx
	jmp	_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	.cfi_endproc
.LFE11262:
	.size	_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_, .-_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_
	.globl	_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj
	.type	_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj, @function
_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj:
.LFB11263:
	.cfi_startproc
	endbr64
	subq	$136, %rsp
	.cfi_def_cfa_offset 144
	movl	%edx, 12(%rsp)
	leaq	40(%rsp), %rdx
	movl	%ecx, 8(%rsp)
	leaq	48(%rsp), %rcx
	movl	%r8d, 4(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 120(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movq	%rdi, 24(%rsp)
	leaq	56(%rsp), %rdi
	movq	%rax, 80(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 96(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	4(%rsp), %rax
	movq	%rsi, 32(%rsp)
	leaq	68(%rsp), %rsi
	movq	%rax, 112(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 56(%rsp)
	movl	$1, 64(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L912
	pushq	48(%rsp)
	.cfi_def_cfa_offset 152
	leaq	_Z21GetPowerAddTimeKernelP6float2Pfjjj(%rip), %rdi
	pushq	48(%rsp)
	.cfi_def_cfa_offset 160
	movq	84(%rsp), %rcx
	movl	92(%rsp), %r8d
	movq	72(%rsp), %rsi
	movl	80(%rsp), %edx
	leaq	96(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 152
	popq	%rdx
	.cfi_def_cfa_offset 144
.L912:
	movq	120(%rsp), %rax
	subq	%fs:40, %rax
	je	.L914
	call	__stack_chk_fail@PLT
.L914:
	addq	$136, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11263:
	.size	_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj, .-_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj
	.globl	_Z21GetPowerAddTimeKernelP6float2Pfjjj
	.type	_Z21GetPowerAddTimeKernelP6float2Pfjjj, @function
_Z21GetPowerAddTimeKernelP6float2Pfjjj:
.LFB11264:
	.cfi_startproc
	endbr64
	jmp	_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj
	.cfi_endproc
.LFE11264:
	.size	_Z21GetPowerAddTimeKernelP6float2Pfjjj, .-_Z21GetPowerAddTimeKernelP6float2Pfjjj
	.globl	_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii
	.type	_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii, @function
_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii:
.LFB11265:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	64(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	76(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	48(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	56(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movl	%r9d, 8(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 72(%rsp)
	movq	%rax, 88(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 96(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 64(%rsp)
	movq	%rax, 76(%rsp)
	movl	$1, 84(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L917
	pushq	56(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z21GetScaleFactorsKernelPfS_S_S_ii(%rip), %rdi
	pushq	56(%rsp)
	.cfi_def_cfa_offset 176
	movq	92(%rsp), %rcx
	movl	100(%rsp), %r8d
	movq	80(%rsp), %rsi
	movl	88(%rsp), %edx
	leaq	104(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L917:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L919
	call	__stack_chk_fail@PLT
.L919:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11265:
	.size	_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii, .-_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii
	.globl	_Z21GetScaleFactorsKernelPfS_S_S_ii
	.type	_Z21GetScaleFactorsKernelPfS_S_S_ii, @function
_Z21GetScaleFactorsKernelPfS_S_S_ii:
.LFB11266:
	.cfi_startproc
	endbr64
	jmp	_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii
	.cfi_endproc
.LFE11266:
	.size	_Z21GetScaleFactorsKernelPfS_S_S_ii, .-_Z21GetScaleFactorsKernelPfS_S_S_ii
	.globl	_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii
	.type	_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii, @function
_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii:
.LFB11267:
	.cfi_startproc
	endbr64
	subq	$136, %rsp
	.cfi_def_cfa_offset 144
	movq	%rdi, 24(%rsp)
	leaq	56(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	68(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	40(%rsp), %rdx
	movl	%ecx, 4(%rsp)
	leaq	48(%rsp), %rcx
	movl	%r8d, (%rsp)
	movq	%fs:40, %rax
	movq	%rax, 120(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	$1, 64(%rsp)
	movq	%rax, 80(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 96(%rsp)
	leaq	4(%rsp), %rax
	movq	%rax, 104(%rsp)
	movq	%rsp, %rax
	movq	%rax, 112(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 56(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L922
	pushq	48(%rsp)
	.cfi_def_cfa_offset 152
	leaq	_Z24GetScaleFactorsDivKernelPfS_S_ii(%rip), %rdi
	pushq	48(%rsp)
	.cfi_def_cfa_offset 160
	movq	84(%rsp), %rcx
	movl	92(%rsp), %r8d
	movq	72(%rsp), %rsi
	movl	80(%rsp), %edx
	leaq	96(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 152
	popq	%rdx
	.cfi_def_cfa_offset 144
.L922:
	movq	120(%rsp), %rax
	subq	%fs:40, %rax
	je	.L924
	call	__stack_chk_fail@PLT
.L924:
	addq	$136, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11267:
	.size	_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii, .-_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii
	.globl	_Z24GetScaleFactorsDivKernelPfS_S_ii
	.type	_Z24GetScaleFactorsDivKernelPfS_S_ii, @function
_Z24GetScaleFactorsDivKernelPfS_S_ii:
.LFB11268:
	.cfi_startproc
	endbr64
	jmp	_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii
	.cfi_endproc
.LFE11268:
	.size	_Z24GetScaleFactorsDivKernelPfS_S_ii, .-_Z24GetScaleFactorsDivKernelPfS_S_ii
	.globl	_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i
	.type	_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i, @function
_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i:
.LFB11269:
	.cfi_startproc
	endbr64
	subq	$120, %rsp
	.cfi_def_cfa_offset 128
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	60(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	32(%rsp), %rdx
	movl	%ecx, 4(%rsp)
	leaq	40(%rsp), %rcx
	movq	%fs:40, %rax
	movq	%rax, 104(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	$1, 56(%rsp)
	movq	%rax, 72(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 80(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	4(%rsp), %rax
	movq	%rax, 96(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 48(%rsp)
	movq	%rax, 60(%rsp)
	movl	$1, 68(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L927
	pushq	40(%rsp)
	.cfi_def_cfa_offset 136
	leaq	_Z27GetScaleFactorsDoubleKernelPfS_S_i(%rip), %rdi
	pushq	40(%rsp)
	.cfi_def_cfa_offset 144
	movq	76(%rsp), %rcx
	movl	84(%rsp), %r8d
	movq	64(%rsp), %rsi
	movl	72(%rsp), %edx
	leaq	88(%rsp), %r9
	call	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	popq	%rax
	.cfi_def_cfa_offset 136
	popq	%rdx
	.cfi_def_cfa_offset 128
.L927:
	movq	104(%rsp), %rax
	subq	%fs:40, %rax
	je	.L929
	call	__stack_chk_fail@PLT
.L929:
	addq	$120, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11269:
	.size	_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i, .-_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i
	.globl	_Z27GetScaleFactorsDoubleKernelPfS_S_i
	.type	_Z27GetScaleFactorsDoubleKernelPfS_S_i, @function
_Z27GetScaleFactorsDoubleKernelPfS_S_i:
.LFB11270:
	.cfi_startproc
	endbr64
	jmp	_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i
	.cfi_endproc
.LFE11270:
	.size	_Z27GetScaleFactorsDoubleKernelPfS_S_i, .-_Z27GetScaleFactorsDoubleKernelPfS_S_i
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC12:
	.ascii	"_ZN3cub17CUB_200700_890_NS6detail8for"
	.string	"_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_"
.LC13:
	.ascii	"_ZN3cub17CUB_200700_8"
	.string	"90_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_"
.LC14:
	.string	"_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_"
.LC15:
	.string	"_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_"
.LC16:
	.string	"_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_"
.LC17:
	.string	"_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv"
.LC18:
	.string	"_Z27GetScaleFactorsDoubleKernelPfS_S_i"
.LC19:
	.string	"_Z24GetScaleFactorsDivKernelPfS_S_ii"
.LC20:
	.string	"_Z21GetScaleFactorsKernelPfS_S_S_ii"
.LC21:
	.string	"_Z21GetPowerAddTimeKernelP6float2Pfjjj"
.LC22:
	.string	"_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_"
.LC23:
	.string	"_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_"
.LC24:
	.string	"_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_"
.LC25:
	.string	"_Z19DetectScrunchKernelP6float2Pfs"
.LC26:
	.string	"_Z27powertimefreq_new_hardcodedP6float2Pf"
.LC27:
	.string	"_Z10unpack_altPKjP6float2"
.LC28:
	.string	"_Z15unpack_new_int2P4int2P6float2"
.LC29:
	.string	"_Z10unpack_newPKjP6float2"
.LC30:
	.string	"_Z19unpack_original_texyP6float2j"
.LC31:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo5beginE"
.LC32:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo3endE"
.LC33:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo6cbeginE"
.LC34:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo4cendE"
.LC35:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo6rbeginE"
.LC36:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo4rendE"
.LC37:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo7crbeginE"
.LC38:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__45__cpo5crendE"
.LC39:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE"
.LC40:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__419piecewise_constructE"
.LC41:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__48in_placeE"
.LC42:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__47nulloptE"
.LC43:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std3__420unreachable_sentinelE"
.LC44:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4swapE"
.LC45:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo9iter_moveE"
.LC46:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo7advanceE"
.LC47:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo5beginE"
.LC48:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo3endE"
.LC49:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo6cbeginE"
.LC50:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4cendE"
.LC51:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo9iter_swapE"
.LC52:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4nextE"
.LC53:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4prevE"
.LC54:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4dataE"
.LC55:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo5cdataE"
.LC56:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo4sizeE"
.LC57:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo5ssizeE"
.LC58:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c284cuda3std6ranges3__45__cpo8distanceE"
.LC59:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS8cuda_cub3parE"
.LC60:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS8cuda_cub10par_nosyncE"
.LC61:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS6system6detail10sequential3seqE"
.LC62:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_1E"
.LC63:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_2E"
.LC64:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_3E"
.LC65:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_4E"
.LC66:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_5E"
.LC67:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_6E"
.LC68:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_7E"
.LC69:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_8E"
.LC70:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders2_9E"
.LC71:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS12placeholders3_10E"
.LC72:
	.string	"_ZN44_INTERNAL_5222f61c_13_benchmarks_cu_2d511c286thrust20THRUST_200700_890_NS3seqE"
	.section	.text.startup,"ax",@progbits
	.type	_ZL24__sti____cudaRegisterAllv, @function
_ZL24__sti____cudaRegisterAllv:
.LFB11284:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	leaq	_ZL15__fatDeviceText(%rip), %rdi
	call	__cudaRegisterFatBinary@PLT
	pushq	$0
	.cfi_def_cfa_offset 24
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC12(%rip), %rdx
	movq	%rax, %rdi
	movq	%rax, %rbx
	pushq	$0
	.cfi_def_cfa_offset 40
	movq	%rdx, %rcx
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 48
	movq	%rax, _ZL20__cudaFatCubinHandle(%rip)
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC13(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC14(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC15(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC16(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC17(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC18(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z27GetScaleFactorsDoubleKernelPfS_S_i(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC19(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z24GetScaleFactorsDivKernelPfS_S_ii(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	movq	%rbx, %rdi
	leaq	.LC20(%rip), %rdx
	pushq	$0
	.cfi_def_cfa_offset 24
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	_Z21GetScaleFactorsKernelPfS_S_S_ii(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC21(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z21GetPowerAddTimeKernelP6float2Pfjjj(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC22(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC23(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC24(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z24DetectScrunchScaleKernelP6float2PfsS1_S1_(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC25(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z19DetectScrunchKernelP6float2Pfs(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC26(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z27powertimefreq_new_hardcodedP6float2Pf(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC27(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z10unpack_altPKjP6float2(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	movq	%rbx, %rdi
	leaq	.LC28(%rip), %rdx
	pushq	$0
	.cfi_def_cfa_offset 24
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	_Z15unpack_new_int2P4int2P6float2(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC29(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z10unpack_newPKjP6float2(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r9d, %r9d
	orl	$-1, %r8d
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC30(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z19unpack_original_texyP6float2j(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	pushq	$0
	.cfi_def_cfa_offset 40
	pushq	$0
	.cfi_def_cfa_offset 48
	call	__cudaRegisterFunction@PLT
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC31(%rip), %rdx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo5beginE(%rip), %rsi
	pushq	$0
	.cfi_def_cfa_offset 32
	movq	%rdx, %rcx
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC32(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo3endE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC33(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo6cbeginE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC34(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo4cendE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC35(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo6rbeginE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC36(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo4rendE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC37(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo7crbeginE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC38(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo5crendE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC39(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC40(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__419piecewise_constructE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC41(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__48in_placeE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC42(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__47nulloptE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC43(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__420unreachable_sentinelE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC44(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4swapE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC45(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo9iter_moveE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC46(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo7advanceE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC47(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5beginE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC48(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo3endE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC49(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo6cbeginE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC50(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4cendE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC51(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo9iter_swapE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC52(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4nextE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC53(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4prevE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC54(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4dataE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC55(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5cdataE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC56(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4sizeE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC57(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5ssizeE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC58(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo8distanceE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC59(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL3parE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC60(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL10par_nosyncE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC61(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail10sequentialL3seqE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC62(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_1E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC63(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_2E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC64(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_3E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC65(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_4E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC66(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_5E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC67(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_6E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC68(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_7E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rdi
	.cfi_def_cfa_offset 24
	popq	%r8
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC69(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_8E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r9
	.cfi_def_cfa_offset 24
	popq	%r10
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC70(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_9E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%r11
	.cfi_def_cfa_offset 24
	popq	%rax
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC71(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL3_10E(%rip), %rsi
	call	__cudaRegisterVar@PLT
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.cfi_def_cfa_offset 16
	pushq	$0
	.cfi_def_cfa_offset 24
	pushq	$0
	.cfi_def_cfa_offset 32
	leaq	.LC72(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NSL3seqE(%rip), %rsi
	call	__cudaRegisterVar@PLT
	movq	_ZL20__cudaFatCubinHandle(%rip), %rdi
	popq	%rcx
	.cfi_def_cfa_offset 24
	popq	%rsi
	.cfi_def_cfa_offset 16
	call	__cudaRegisterFatBinaryEnd@PLT
	leaq	_ZL26__cudaUnregisterBinaryUtilv(%rip), %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	atexit@PLT
	.cfi_endproc
.LFE11284:
	.size	_ZL24__sti____cudaRegisterAllv, .-_ZL24__sti____cudaRegisterAllv
	.section	.init_array,"aw"
	.align 8
	.quad	_ZL24__sti____cudaRegisterAllv
	.section	.rodata._ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i.str1.1,"aMS",@progbits,1
.LC73:
	.string	"Failed to query current device"
	.section	.text._ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,"axG",@progbits,_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,comdat
	.align 2
	.weak	_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i
	.type	_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i, @function
_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i:
.LFB11696:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA11696
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	movq	%rdi, %r13
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rsi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movslq	%edx, %rbx
	subq	$168, %rsp
	.cfi_def_cfa_offset 224
	movq	%fs:40, %rax
	movq	%rax, 152(%rsp)
	xorl	%eax, %eax
	movb	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip), %al
	testb	%al, %al
	jne	.L936
	leaq	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L936
	movq	%rsp, %rdi
	movl	$-1, (%rsp)
.LEHB6:
	call	cudaGetDeviceCount@PLT
	movl	%eax, %ebp
	call	cudaGetLastError@PLT
.LEHE6:
	testl	%ebp, %ebp
	sete	%dl
	testl	%eax, %eax
	setne	%al
	testb	%al, %dl
	jne	.L963
	testl	%ebp, %ebp
	je	.L938
.L963:
	movl	$-1, (%rsp)
.L938:
	movl	(%rsp), %eax
	movq	%r14, %rdi
	movl	%eax, _ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip)
	call	__cxa_guard_release@PLT
.L936:
	cmpl	_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip), %ebx
	jge	.L940
	testl	%ebx, %ebx
	js	.L940
	jmp	.L984
.L961:
	endbr64
	movq	%rax, %rbx
.L942:
	movq	%r14, %rdi
	call	__cxa_guard_abort@PLT
	jmp	.L983
.L984:
	imulq	$12, %rbx, %rbp
	addq	%r13, %rbp
	movl	0(%rbp), %eax
	cmpl	$2, %eax
	je	.L958
	jmp	.L985
.L940:
	movl	$101, %eax
	salq	$32, %rax
	jmp	.L946
.L985:
	xorl	%eax, %eax
	movl	$1, %edx
	lock cmpxchgl	%edx, 0(%rbp)
	jne	.L947
	movl	(%r12), %eax
	leaq	4(%rsp), %rdi
	movl	%eax, (%rsp)
	xorl	%eax, %eax
	movl	%eax, 4(%rsp)
.LEHB7:
	call	cudaGetDevice@PLT
	movl	%eax, %r12d
	testl	%eax, %eax
	je	.L948
	call	cudaGetLastError@PLT
	leaq	.LC73(%rip), %rsi
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	je	.L982
	jmp	.L981
.L948:
	movl	(%rsp), %edi
	cmpl	%edi, 4(%rsp)
	je	.L950
	call	cudaSetDevice@PLT
	movl	%eax, %r12d
	testl	%eax, %eax
	je	.L950
	call	cudaGetLastError@PLT
	leaq	.LC7(%rip), %rsi
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L981
.L982:
	movl	%r12d, %edi
	call	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
.LEHE7:
.L950:
	leaq	8(%rsp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv(%rip), %rsi
	movq	%rsp, %r15
.LEHB8:
	call	cudaFuncGetAttributes@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
.LEHE8:
	movl	%eax, %r12d
	testl	%r14d, %r14d
	jne	.L964
	testl	%eax, %eax
	jne	.L952
.L964:
	movl	%r14d, %r12d
.L952:
	imull	$10, 40(%rsp), %eax
	movq	%r15, %rdi
	movl	%eax, 4(%rbp)
	call	_ZN4cuda3__423__ensure_current_deviceD1Ev
	movl	%r12d, 8(%rbp)
	testl	%r12d, %r12d
	je	.L955
.LEHB9:
	call	cudaGetLastError@PLT
	jmp	.L955
.L962:
	endbr64
	movq	%rax, %rbx
.L956:
	movq	%r15, %rdi
	call	_ZN4cuda3__423__ensure_current_deviceD1Ev
.L983:
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L981
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE9:
.L955:
	movl	$2, 0(%rbp)
	jmp	.L958
.L947:
	decl	%eax
	jne	.L958
.L959:
	movl	0(%rbp), %eax
	cmpl	$2, %eax
	jne	.L959
.L958:
	imulq	$12, %rbx, %rbx
	movq	4(%r13,%rbx), %rax
.L946:
	movq	152(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L960
.L981:
	call	__stack_chk_fail@PLT
.L960:
	addq	$168, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%rbp
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11696:
	.section	.gcc_except_table._ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,"aG",@progbits,_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,comdat
.LLSDA11696:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE11696-.LLSDACSB11696
.LLSDACSB11696:
	.uleb128 .LEHB6-.LFB11696
	.uleb128 .LEHE6-.LEHB6
	.uleb128 .L961-.LFB11696
	.uleb128 0
	.uleb128 .LEHB7-.LFB11696
	.uleb128 .LEHE7-.LEHB7
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB8-.LFB11696
	.uleb128 .LEHE8-.LEHB8
	.uleb128 .L962-.LFB11696
	.uleb128 0
	.uleb128 .LEHB9-.LFB11696
	.uleb128 .LEHE9-.LEHB9
	.uleb128 0
	.uleb128 0
.LLSDACSE11696:
	.section	.text._ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,"axG",@progbits,_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i,comdat
	.size	_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i, .-_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i
	.section	.text._ZN3cub17CUB_200700_890_NS10PtxVersionERi,"axG",@progbits,_ZN3cub17CUB_200700_890_NS10PtxVersionERi,comdat
	.weak	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	.type	_ZN3cub17CUB_200700_890_NS10PtxVersionERi, @function
_ZN3cub17CUB_200700_890_NS10PtxVersionERi:
.LFB7092:
	.cfi_startproc
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	pushq	%r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	pushq	%r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	pushq	%rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	movq	%rdi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	subq	$16, %rsp
	.cfi_def_cfa_offset 64
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	leaq	4(%rsp), %r13
	movl	$-1, 4(%rsp)
	movq	%r13, %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	sete	%dl
	testl	%eax, %eax
	setne	%al
	testb	%al, %dl
	jne	.L993
	testl	%ebx, %ebx
	jne	.L993
	movl	4(%rsp), %r12d
	jmp	.L987
.L993:
	orl	$-1, %r12d
.L987:
	movb	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %rbx
	testb	%al, %al
	jne	.L989
	leaq	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L989
	movl	$384, %ecx
	xorl	%eax, %eax
	movq	%rbx, %rdi
	rep stosl
	movq	%r14, %rdi
	call	__cxa_guard_release@PLT
.L989:
	movl	%r12d, %edx
	movq	%r13, %rsi
	movq	%rbx, %rdi
	movl	%r12d, 4(%rsp)
	call	_ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i
	movq	%rax, %r12
	movq	%rax, %rbx
	call	cudaGetLastError@PLT
	shrq	$32, %r12
	orl	%r12d, %eax
	movl	%r12d, %r13d
	jne	.L986
	movl	%ebx, 0(%rbp)
.L986:
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	je	.L992
	call	__stack_chk_fail@PLT
.L992:
	addq	$16, %rsp
	.cfi_def_cfa_offset 48
	movl	%r13d, %eax
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%rbp
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r13
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7092:
	.size	_ZN3cub17CUB_200700_890_NS10PtxVersionERi, .-_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	.section	.rodata._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.str1.1,"aMS",@progbits,1
.LC74:
	.string	"basic_string: construction from null is not valid"
	.section	.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_,"axG",@progbits,_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC5IS3_EEPKcRKS3_,comdat
	.align 2
	.weak	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.type	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_, @function
_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_:
.LFB11708:
	.cfi_startproc
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	subq	$16, %rsp
	.cfi_def_cfa_offset 48
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	leaq	16(%rdi), %rax
	movq	%rax, (%rdi)
	testq	%rsi, %rsi
	jne	.L999
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1004
	leaq	.LC74(%rip), %rdi
	call	_ZSt19__throw_logic_errorPKc@PLT
.L999:
	movq	%rdi, %rbx
	movq	%rsi, %rdi
	movq	%rsi, %rbp
	call	strlen@PLT
	movq	%rax, (%rsp)
	leaq	0(%rbp,%rax), %r12
	cmpq	$15, %rax
	jbe	.L1001
	movq	%rsp, %rsi
	xorl	%edx, %edx
	movq	%rbx, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm@PLT
	movq	%rax, (%rbx)
	movq	(%rsp), %rax
	movq	%rax, 16(%rbx)
.L1001:
	movq	(%rbx), %rdi
	movq	%r12, %rdx
	movq	%rbp, %rsi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE13_S_copy_charsEPcPKcS7_@PLT
	movq	(%rsp), %rax
	movq	(%rbx), %rdx
	movq	%rax, 8(%rbx)
	movb	$0, (%rdx,%rax)
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1002
.L1004:
	call	__stack_chk_fail@PLT
.L1002:
	addq	$16, %rsp
	.cfi_def_cfa_offset 32
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11708:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_, .-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.weak	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
	.set	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_,_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei.str1.1,"aMS",@progbits,1
.LC75:
	.string	"Unknown error"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei
	.type	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei, @function
_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei:
.LFB8337:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA8337
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	movl	%edx, %r12d
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	movq	%rdi, %rbx
	subq	$24, %rsp
	.cfi_def_cfa_offset 64
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	movb	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %al
	testb	%al, %al
	jne	.L1007
	leaq	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1007
	leaq	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %r13
	leaq	7(%rsp), %rdx
	leaq	.LC75(%rip), %rsi
	movq	%r13, %rdi
.LEHB10:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE10:
	movq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev@GOTPCREL(%rip), %rdi
	leaq	__dso_handle(%rip), %rdx
	movq	%r13, %rsi
	call	__cxa_atexit@PLT
	movq	%rbp, %rdi
	call	__cxa_guard_release@PLT
.L1007:
	movl	%r12d, %edi
	call	strerror@PLT
	movq	%rax, %rsi
	testq	%rax, %rax
	je	.L1009
	leaq	7(%rsp), %rdx
	movq	%rbx, %rdi
.LEHB11:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
	jmp	.L1005
.L1009:
	leaq	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %rsi
	movq	%rbx, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1ERKS4_@PLT
	jmp	.L1005
.L1014:
	endbr64
	movq	%rax, %rbx
.L1011:
	movq	%rbp, %rdi
	call	__cxa_guard_abort@PLT
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1019
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE11:
.L1005:
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1013
.L1019:
	call	__stack_chk_fail@PLT
.L1013:
	addq	$24, %rsp
	.cfi_def_cfa_offset 40
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8337:
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,comdat
.LLSDA8337:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE8337-.LLSDACSB8337
.LLSDACSB8337:
	.uleb128 .LEHB10-.LFB8337
	.uleb128 .LEHE10-.LEHB10
	.uleb128 .L1014-.LFB8337
	.uleb128 0
	.uleb128 .LEHB11-.LFB8337
	.uleb128 .LEHE11-.LEHB11
	.uleb128 0
	.uleb128 0
.LLSDACSE8337:
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,comdat
	.size	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei, .-_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei.str1.1,"aMS",@progbits,1
.LC76:
	.string	"unknown error"
.LC77:
	.string	"cudaErrorUnknown"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei
	.type	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei, @function
_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei:
.LFB8402:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA8402
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	movq	%rdi, %r12
	movl	%edx, %edi
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	movl	%edx, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$88, %rsp
	.cfi_def_cfa_offset 128
	movq	%fs:40, %rax
	movq	%rax, 72(%rsp)
	xorl	%eax, %eax
.LEHB12:
	call	cudaGetErrorString@PLT
	movl	%ebp, %edi
	movq	%rax, %rbx
	call	cudaGetErrorName@PLT
	movq	%rax, %rsi
	testq	%rbx, %rbx
	jne	.L1021
	leaq	.LC76(%rip), %rbx
.L1021:
	testq	%rsi, %rsi
	jne	.L1022
	leaq	.LC77(%rip), %rsi
.L1022:
	leaq	8(%rsp), %rbp
	leaq	7(%rsp), %rdx
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE12:
	leaq	.LC4(%rip), %rsi
	movq	%rbp, %rdi
.LEHB13:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE13:
	leaq	40(%rsp), %r13
	movq	%rax, %rsi
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	movq	%rbx, %rsi
	movq	%r13, %rdi
.LEHB14:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE14:
	movq	%rax, %rsi
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1026
	jmp	.L1031
.L1030:
	endbr64
	movq	%rax, %rbx
.L1023:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1024
.L1029:
	endbr64
	movq	%rax, %rbx
.L1024:
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1031
	movq	%rbx, %rdi
.LEHB15:
	call	_Unwind_Resume@PLT
.LEHE15:
.L1031:
	call	__stack_chk_fail@PLT
.L1026:
	addq	$88, %rsp
	.cfi_def_cfa_offset 40
	movq	%r12, %rax
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE8402:
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,comdat
.LLSDA8402:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE8402-.LLSDACSB8402
.LLSDACSB8402:
	.uleb128 .LEHB12-.LFB8402
	.uleb128 .LEHE12-.LEHB12
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB13-.LFB8402
	.uleb128 .LEHE13-.LEHB13
	.uleb128 .L1029-.LFB8402
	.uleb128 0
	.uleb128 .LEHB14-.LFB8402
	.uleb128 .LEHE14-.LEHB14
	.uleb128 .L1030-.LFB8402
	.uleb128 0
	.uleb128 .LEHB15-.LFB8402
	.uleb128 .LEHE15-.LEHB15
	.uleb128 0
	.uleb128 0
.LLSDACSE8402:
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,comdat
	.size	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei, .-_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm
	.type	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm, @function
_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm:
.LFB12549:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12549
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	pushq	%r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	pushq	%r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	pushq	%rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	subq	$96, %rsp
	.cfi_def_cfa_offset 144
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	16(%rsp), %rdi
.LEHB16:
	call	cudaMalloc@PLT
	testl	%eax, %eax
	je	.L1034
	movl	%eax, %ebp
	leaq	24(%rsp), %r12
	call	cudaGetLastError@PLT
.LEHE16:
	movl	$40, %edi
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rbx
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movl	%ebp, %edx
	movq	%r12, %rdi
	movq	%rax, %rsi
	movq	(%rax), %rax
.LEHB17:
	call	*48(%rax)
.LEHE17:
	leaq	56(%rsp), %r14
	movq	24(%rsp), %rsi
	leaq	15(%rsp), %rdx
	movq	%r14, %rdi
.LEHB18:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE18:
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rax
	movb	$0, 24(%rbx)
	movq	%rbx, %rdi
	leaq	8(%rbx), %r13
	movq	%rax, (%rbx)
	leaq	24(%rbx), %rax
	movq	%rax, 8(%rbx)
	xorl	%eax, %eax
	movq	%rax, 16(%rbx)
	call	_ZNKSt9bad_alloc4whatEv@PLT
	movq	%rax, %rdi
	movq	%rax, %rbp
	call	strlen@PLT
	movq	16(%rbx), %rdx
	movq	%rbp, %rcx
	xorl	%esi, %esi
	movq	%rax, %r8
	movq	%r13, %rdi
.LEHB19:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm@PLT
	leaq	.LC4(%rip), %rsi
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
	movq	64(%rsp), %rdx
	movq	56(%rsp), %rsi
	movabsq	$4611686018427387903, %rax
	subq	16(%rbx), %rax
	cmpq	%rdx, %rax
	jnb	.L1035
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1048
	leaq	.LC5(%rip), %rdi
	call	_ZSt20__throw_length_errorPKc@PLT
.L1035:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm@PLT
.LEHE19:
	jmp	.L1051
.L1046:
	endbr64
	movq	%rax, %rbp
.L1038:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbx, %rdi
	call	_ZNSt9bad_allocD2Ev@PLT
	movq	%r14, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1039
.L1051:
	movq	%r14, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1048
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev(%rip), %rdx
	leaq	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rsi
	movq	%rbx, %rdi
.LEHB20:
	call	__cxa_throw@PLT
.L1034:
	movq	16(%rsp), %rax
	movq	88(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1043
	jmp	.L1048
.L1045:
	endbr64
	movq	%rax, %rbp
.L1039:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1041
.L1044:
	endbr64
	movq	%rax, %rbp
.L1041:
	movq	%rbx, %rdi
	call	__cxa_free_exception@PLT
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1048
	movq	%rbp, %rdi
	call	_Unwind_Resume@PLT
.LEHE20:
.L1048:
	call	__stack_chk_fail@PLT
.L1043:
	addq	$96, %rsp
	.cfi_def_cfa_offset 48
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%rbp
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r13
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12549:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,comdat
.LLSDA12549:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12549-.LLSDACSB12549
.LLSDACSB12549:
	.uleb128 .LEHB16-.LFB12549
	.uleb128 .LEHE16-.LEHB16
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB17-.LFB12549
	.uleb128 .LEHE17-.LEHB17
	.uleb128 .L1044-.LFB12549
	.uleb128 0
	.uleb128 .LEHB18-.LFB12549
	.uleb128 .LEHE18-.LEHB18
	.uleb128 .L1045-.LFB12549
	.uleb128 0
	.uleb128 .LEHB19-.LFB12549
	.uleb128 .LEHE19-.LEHB19
	.uleb128 .L1046-.LFB12549
	.uleb128 0
	.uleb128 .LEHB20-.LFB12549
	.uleb128 .LEHE20-.LEHB20
	.uleb128 0
	.uleb128 0
.LLSDACSE12549:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm, .-_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm
	.section	.text._ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
	.type	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm, @function
_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm:
.LFB12499:
	.cfi_startproc
	endbr64
	pushq	%rax
	.cfi_def_cfa_offset 16
	movq	8(%rdi), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm
	popq	%rdx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12499:
	.size	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm, .-_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv:
.LFB11759:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE11759:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	.section	.text._ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE,"axG",@progbits,_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC5IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE,comdat
	.align 2
	.weak	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	.type	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE, @function
_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE:
.LFB11762:
	.cfi_startproc
	endbr64
	cvtsi2sdq	(%rsi), %xmm0
	divsd	.LC78(%rip), %xmm0
	movsd	%xmm0, (%rdi)
	ret
	.cfi_endproc
.LFE11762:
	.size	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE, .-_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	.weak	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	.set	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE,_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC2IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv:
.LFB11768:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE11768:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv:
.LFB11770:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE11770:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv:
.LFB12262:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12262
	endbr64
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.L1064
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	movq	8(%rdi), %rsi
	movl	$1, %ecx
	movq	(%rdi), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	xorl	%eax, %eax
	movq	%rax, 8(%rbx)
	movq	%rax, 16(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L1064:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE12262:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,comdat
.LLSDA12262:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12262-.LLSDACSB12262
.LLSDACSB12262:
.LLSDACSE12262:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv:
.LFB12286:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12286
	endbr64
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.L1073
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	movq	8(%rdi), %rsi
	salq	$3, %rdx
	movq	(%rdi), %rdi
	movl	$8, %ecx
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	xorl	%eax, %eax
	movq	%rax, 8(%rbx)
	movq	%rax, 16(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L1073:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE12286:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,comdat
.LLSDA12286:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12286-.LLSDACSB12286
.LLSDACSB12286:
.LLSDACSE12286:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv:
.LFB12310:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12310
	endbr64
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.L1082
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	movq	8(%rdi), %rsi
	salq	$2, %rdx
	movq	(%rdi), %rdi
	movl	$4, %ecx
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	xorl	%eax, %eax
	movq	%rax, 8(%rbx)
	movq	%rax, 16(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L1082:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE12310:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,comdat
.LLSDA12310:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12310-.LLSDACSB12310
.LLSDACSB12310:
.LLSDACSE12310:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev:
.LFB11990:
	.cfi_startproc
	endbr64
	jmp	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv
	.cfi_endproc
.LFE11990:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED1Ev,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	.section	.text._ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v
	.type	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v, @function
_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v:
.LFB12351:
	.cfi_startproc
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	pushq	%r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	pushq	%r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	pushq	%rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	movb	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource(%rip), %al
	leaq	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource(%rip), %rbx
	testb	%al, %al
	jne	.L1088
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1088
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE(%rip), %rax
	leaq	__dso_handle(%rip), %r12
	movq	%rax, _ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource(%rip)
	movb	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource(%rip), %al
	leaq	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource(%rip), %r13
	testb	%al, %al
	jne	.L1091
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1091
	leaq	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED1Ev(%rip), %rdi
	movq	%r12, %rdx
	movq	%r13, %rsi
	call	__cxa_atexit@PLT
	movq	%r14, %rdi
	call	__cxa_guard_release@PLT
.L1091:
	leaq	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED1Ev(%rip), %rdi
	movq	%r12, %rdx
	movq	%rbx, %rsi
	movq	%r13, 8+_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource(%rip)
	call	__cxa_atexit@PLT
	movq	%rbp, %rdi
	call	__cxa_guard_release@PLT
.L1088:
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%rbp
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r13
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12351:
	.size	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v, .-_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v
	.section	.rodata
	.align 32
.LC0:
	.value	3
	.value	48
	.long	0
	.long	0
	.long	0
	.long	0
	.long	0
	.quad	0
	.long	0
	.zero	4
	.quad	0
	.section	.text._ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_,"axG",@progbits,_ZN5nvtx32v116event_attributesC5IJEEERKNS0_7messageEDpRKT_,comdat
	.align 2
	.weak	_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_
	.type	_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_, @function
_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_:
.LFB12627:
	.cfi_startproc
	endbr64
	movq	%rsi, %rdx
	movq	%rdi, %rax
	movl	$12, %ecx
	leaq	.LC0(%rip), %rsi
	rep movsl
	movq	8(%rdx), %rcx
	movl	(%rdx), %edx
	movq	%rcx, 40(%rax)
	movl	%edx, 32(%rax)
	ret
	.cfi_endproc
.LFE12627:
	.size	_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_, .-_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_
	.weak	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	.set	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_,_ZN5nvtx32v116event_attributesC2IJEEERKNS0_7messageEDpRKT_
	.section	.rodata._ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v.str1.1,"aMS",@progbits,1
.LC79:
	.string	"CCCL"
	.section	.text._ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,"axG",@progbits,_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,comdat
	.weak	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	.type	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v, @function
_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v:
.LFB12705:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12705
	endbr64
	movb	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %al
	testb	%al, %al
	jne	.L1111
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	leaq	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %rbx
	movq	%rbx, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1103
	movq	480+nvtxGlobals_v3(%rip), %rdx
	xorl	%eax, %eax
	testq	%rdx, %rdx
	je	.L1105
	leaq	.LC79(%rip), %rdi
	call	*%rdx
.L1105:
	movq	%rbx, %rdi
	movq	%rax, _ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip)
	call	__cxa_guard_release@PLT
.L1103:
	leaq	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %rax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L1111:
	.cfi_restore 3
	leaq	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %rax
	ret
	.cfi_endproc
.LFE12705:
	.section	.gcc_except_table._ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,"aG",@progbits,_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,comdat
.LLSDA12705:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12705-.LLSDACSB12705
.LLSDACSB12705:
.LLSDACSE12705:
	.section	.text._ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,"axG",@progbits,_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v,comdat
	.size	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v, .-_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	.section	.text._ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc,"axG",@progbits,_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC5EPKc,comdat
	.align 2
	.weak	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc
	.type	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc, @function
_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc:
.LFB12676:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12676
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	subq	$16, %rsp
	.cfi_def_cfa_offset 32
	movq	%rsi, 8(%rsp)
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	464+nvtxGlobals_v3(%rip), %rdx
	movq	(%rax), %rdi
	xorl	%eax, %eax
	testq	%rdx, %rdx
	je	.L1115
	movq	8(%rsp), %rsi
	call	*%rdx
.L1115:
	movq	%rax, (%rbx)
	addq	$16, %rsp
	.cfi_def_cfa_offset 16
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12676:
	.section	.gcc_except_table._ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc,"aG",@progbits,_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC5EPKc,comdat
.LLSDA12676:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12676-.LLSDACSB12676
.LLSDACSB12676:
.LLSDACSE12676:
	.section	.text._ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc,"axG",@progbits,_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC5EPKc,comdat
	.size	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc, .-_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc
	.weak	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	.set	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc,_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC2EPKc
	.text
	.align 2
	.type	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0, @function
_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0:
.LFB12833:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12833
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	movq	%rdi, %rbx
	pushq	%rdx
	.cfi_def_cfa_offset 32
	cmpb	$0, 1(%rdi)
	je	.L1120
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	(%rax), %rdi
	call	nvtxDomainRangePop
	movb	$0, 1(%rbx)
.L1120:
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	(%rax), %rdi
	movq	416+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L1121
	movq	%rbp, %rsi
	call	*%rax
.L1121:
	movb	$1, 1(%rbx)
	popq	%rax
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12833:
	.section	.gcc_except_table,"a",@progbits
.LLSDA12833:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12833-.LLSDACSB12833
.LLSDACSB12833:
.LLSDACSE12833:
	.text
	.size	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0, .-_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	.section	.text._ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev,"axG",@progbits,_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED5Ev,comdat
	.align 2
	.weak	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	.hidden	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	.type	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev, @function
_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev:
.LFB12673:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12673
	endbr64
	cmpb	$0, 1(%rdi)
	je	.L1129
	pushq	%rax
	.cfi_def_cfa_offset 16
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	(%rax), %rdi
	call	nvtxDomainRangePop
	popq	%rdx
	.cfi_def_cfa_offset 8
	ret
.L1129:
	ret
	.cfi_endproc
.LFE12673:
	.section	.gcc_except_table
.LLSDA12673:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12673-.LLSDACSB12673
.LLSDACSB12673:
.LLSDACSE12673:
	.section	.text._ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev,"axG",@progbits,_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED5Ev,comdat
	.size	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev, .-_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	.weak	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED1Ev
	.hidden	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED1Ev
	.set	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED1Ev,_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	.section	.rodata._ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st.str1.1,"aMS",@progbits,1
.LC80:
	.string	"cub::DeviceFor::Bulk"
	.section	.text._ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st,"axG",@progbits,_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st,comdat
	.weak	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st
	.type	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st, @function
_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st:
.LFB12691:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12691
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rsi, %r15
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%xmm0, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	movq	%rdx, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rdi, %rbx
	subq	$120, %rsp
	.cfi_def_cfa_offset 176
	movq	%fs:40, %rax
	movq	%rax, 104(%rsp)
	xorl	%eax, %eax
	movw	$0, 26(%rsp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L1134
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1134
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	leaq	.LC80(%rip), %rsi
	call	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	movq	%r12, %rdi
	call	__cxa_guard_release@PLT
.L1134:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r12
	testb	%al, %al
	jne	.L1137
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r13
	movq	%r13, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1137
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	movq	%r12, %rdi
	leaq	64(%rsp), %rsi
	movl	$3, 64(%rsp)
	movq	%rax, 72(%rsp)
	call	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	movq	%r13, %rdi
	call	__cxa_guard_release@PLT
.L1137:
	leaq	26(%rsp), %r13
	movq	%r12, %rsi
	movq	%r13, %rdi
	call	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	xorl	%eax, %eax
	leaq	28(%rsp), %rdi
	movl	%eax, 28(%rsp)
.LEHB21:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r12d
	call	cudaGetLastError@PLT
	testl	%r12d, %r12d
	jne	.L1155
	testl	%eax, %eax
	jne	.L1139
.L1155:
	movl	%r12d, %eax
	testl	%r12d, %r12d
	jne	.L1139
	movq	%r15, 40(%rsp)
	movq	%r14, 48(%rsp)
	testq	%rbx, %rbx
	jne	.L1141
.L1147:
	xorl	%ebx, %ebx
	jmp	.L1142
.L1141:
	xorl	%eax, %eax
	movq	%rbx, %rdx
	testl	$511, %ebx
	movq	%rbp, %r9
	setne	%al
	shrq	$9, %rdx
	movl	$1, 68(%rsp)
	xorl	%r8d, %r8d
	addq	%rdx, %rax
	movl	%eax, 64(%rsp)
	movq	64(%rsp), %rdi
	movabsq	$1099511627777, %rax
	movq	%rax, 72(%rsp)
	movl	72(%rsp), %esi
	movabsq	$4294967297, %rax
	movq	%rax, 80(%rsp)
	movl	84(%rsp), %ecx
	movq	76(%rsp), %rdx
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1143
.L1145:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r12d
	call	cudaGetLastError@PLT
	jmp	.L1179
.L1143:
	movq	40(%rsp), %rsi
	movq	48(%rsp), %xmm0
	movq	%rbx, %rdi
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrI6float2EESC_EEEEvT0_T1_
	jmp	.L1145
.L1179:
	movl	%eax, %ebx
	testl	%r12d, %r12d
	jne	.L1156
	testl	%eax, %eax
	jne	.L1142
.L1156:
	movl	%r12d, %ebx
	testl	%r12d, %r12d
	jne	.L1142
	call	cudaGetLastError@PLT
	testl	%eax, %eax
	je	.L1147
	movq	%rbp, %rdi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
.L1142:
	call	cudaGetLastError@PLT
.LEHE21:
	testl	%ebx, %ebx
	jne	.L1157
	testl	%eax, %eax
	jne	.L1139
.L1157:
	movl	%ebx, %eax
.L1139:
	movq	%r13, %rdi
	movl	%eax, 12(%rsp)
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movl	12(%rsp), %eax
	movq	104(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1151
	jmp	.L1177
.L1154:
	endbr64
	movq	%rax, %rbx
.L1149:
	movq	%r13, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movq	104(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1177
	movq	%rbx, %rdi
.LEHB22:
	call	_Unwind_Resume@PLT
.LEHE22:
.L1177:
	call	__stack_chk_fail@PLT
.L1151:
	addq	$120, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%rbp
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12691:
	.section	.gcc_except_table
.LLSDA12691:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12691-.LLSDACSB12691
.LLSDACSB12691:
	.uleb128 .LEHB21-.LFB12691
	.uleb128 .LEHE21-.LEHB21
	.uleb128 .L1154-.LFB12691
	.uleb128 0
	.uleb128 .LEHB22-.LFB12691
	.uleb128 .LEHE22-.LEHB22
	.uleb128 0
	.uleb128 0
.LLSDACSE12691:
	.section	.text._ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st,"axG",@progbits,_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st,comdat
	.size	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st, .-_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em.str1.1,"aMS",@progbits,1
.LC82:
	.string	"parallel_for failed"
.LC83:
	.string	"parallel_for: failed to synchronize"
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC5Em,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em:
.LFB11987:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA11987
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	movq	%rdi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rsi, %rbx
	subq	$104, %rsp
	.cfi_def_cfa_offset 160
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	call	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v
	xorl	%edx, %edx
	movq	%rax, 0(%rbp)
	movq	%rdx, 8(%rbp)
	movq	%rdx, 16(%rbp)
	movq	%rdx, 24(%rbp)
	testq	%rbx, %rbx
	je	.L1180
	movq	%rax, %rdi
	leaq	0(,%rbx,4), %rsi
	movl	$4, %edx
.LEHB23:
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
.LEHE23:
	movq	%rax, 8(%rbp)
	movq	%rax, %r14
	movq	%rbx, 16(%rbp)
	movq	%rbx, 24(%rbp)
	movw	$0, 10(%rsp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L1183
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1183
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	leaq	.LC80(%rip), %rsi
	call	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	movq	%r12, %rdi
	call	__cxa_guard_release@PLT
.L1183:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r13
	testb	%al, %al
	jne	.L1186
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1186
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	movq	%r13, %rdi
	leaq	48(%rsp), %rsi
	movl	$3, 48(%rsp)
	movq	%rax, 56(%rsp)
	call	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	movq	%r12, %rdi
	call	__cxa_guard_release@PLT
.L1186:
	leaq	10(%rsp), %r12
	movq	%r13, %rsi
	movq	%r12, %rdi
	call	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	xorl	%eax, %eax
	leaq	12(%rsp), %rdi
	movl	%eax, 12(%rsp)
.LEHB24:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
	testl	%r15d, %r15d
	jne	.L1203
	testl	%eax, %eax
	jne	.L1188
.L1203:
	movl	%r15d, %r13d
	testl	%r15d, %r15d
	jne	.L1188
	xorl	%eax, %eax
	movq	%rbx, %rdx
	testl	$511, %ebx
	movq	%r14, 24(%rsp)
	setne	%al
	shrq	$9, %rdx
	xorl	%r8d, %r8d
	movl	$1, 52(%rsp)
	addq	%rdx, %rax
	movl	$1, %r9d
	movl	$0x00000000, 32(%rsp)
	movl	%eax, 48(%rsp)
	movq	48(%rsp), %rdi
	movabsq	$1099511627777, %rax
	movq	%rax, 56(%rsp)
	movl	56(%rsp), %esi
	movabsq	$4294967297, %rax
	movq	%rax, 64(%rsp)
	movl	68(%rsp), %ecx
	movq	60(%rsp), %rdx
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L1190
	movq	24(%rsp), %rsi
	movss	32(%rsp), %xmm0
	movq	%rbx, %rdi
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIfEEfEEEEvT0_T1_
.L1190:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1204
	testl	%eax, %eax
	jne	.L1191
.L1204:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1191
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L1191
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
.L1191:
	call	cudaGetLastError@PLT
.LEHE24:
	movl	%eax, %r13d
	testl	%ebx, %ebx
	jne	.L1205
	testl	%eax, %eax
	jne	.L1188
.L1205:
	movl	%ebx, %r13d
.L1188:
	movq	%r12, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	leaq	.LC82(%rip), %rsi
	movl	%r13d, %edi
.LEHB25:
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	jmp	.L1230
.L1202:
	endbr64
	movq	%rax, %rbx
.L1195:
	movq	%r12, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	jmp	.L1196
.L1230:
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	leaq	.LC83(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE25:
	jmp	.L1180
.L1201:
	endbr64
	movq	%rax, %rbx
.L1196:
	movq	%rbp, %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIfNS0_16device_allocatorIfEEE10deallocateEv
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1229
	movq	%rbx, %rdi
.LEHB26:
	call	_Unwind_Resume@PLT
.LEHE26:
.L1180:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1198
.L1229:
	call	__stack_chk_fail@PLT
.L1198:
	addq	$104, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%rbp
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE11987:
	.section	.gcc_except_table
.LLSDA11987:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE11987-.LLSDACSB11987
.LLSDACSB11987:
	.uleb128 .LEHB23-.LFB11987
	.uleb128 .LEHE23-.LEHB23
	.uleb128 .L1201-.LFB11987
	.uleb128 0
	.uleb128 .LEHB24-.LFB11987
	.uleb128 .LEHE24-.LEHB24
	.uleb128 .L1202-.LFB11987
	.uleb128 0
	.uleb128 .LEHB25-.LFB11987
	.uleb128 .LEHE25-.LEHB25
	.uleb128 .L1201-.LFB11987
	.uleb128 0
	.uleb128 .LEHB26-.LFB11987
	.uleb128 .LEHE26-.LEHB26
	.uleb128 0
	.uleb128 0
.LLSDACSE11987:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC5Em,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC1Em
	.set	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC1Em,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
	.section	.text._ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st,"axG",@progbits,_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st,comdat
	.weak	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st
	.type	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st, @function
_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st:
.LFB12736:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12736
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rsi, %r15
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%xmm0, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	movq	%rdx, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rdi, %rbx
	subq	$120, %rsp
	.cfi_def_cfa_offset 176
	movq	%fs:40, %rax
	movq	%rax, 104(%rsp)
	xorl	%eax, %eax
	movw	$0, 26(%rsp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L1233
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1233
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	leaq	.LC80(%rip), %rsi
	call	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	movq	%r12, %rdi
	call	__cxa_guard_release@PLT
.L1233:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r12
	testb	%al, %al
	jne	.L1236
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r13
	movq	%r13, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1236
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	movq	%r12, %rdi
	leaq	64(%rsp), %rsi
	movl	$3, 64(%rsp)
	movq	%rax, 72(%rsp)
	call	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	movq	%r13, %rdi
	call	__cxa_guard_release@PLT
.L1236:
	leaq	26(%rsp), %r13
	movq	%r12, %rsi
	movq	%r13, %rdi
	call	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	xorl	%eax, %eax
	leaq	28(%rsp), %rdi
	movl	%eax, 28(%rsp)
.LEHB27:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r12d
	call	cudaGetLastError@PLT
	testl	%r12d, %r12d
	jne	.L1254
	testl	%eax, %eax
	jne	.L1238
.L1254:
	movl	%r12d, %eax
	testl	%r12d, %r12d
	jne	.L1238
	movq	%r15, 40(%rsp)
	movq	%r14, 48(%rsp)
	testq	%rbx, %rbx
	jne	.L1240
.L1246:
	xorl	%ebx, %ebx
	jmp	.L1241
.L1240:
	xorl	%ecx, %ecx
	movq	%rbx, %rax
	testl	$511, %ebx
	movl	$512, %esi
	setne	%cl
	cqto
	movl	$1, 68(%rsp)
	movq	%rbp, %r9
	idivq	%rsi
	xorl	%r8d, %r8d
	addq	%rax, %rcx
	movabsq	$1099511627777, %rax
	movq	%rax, 72(%rsp)
	movl	72(%rsp), %esi
	movabsq	$4294967297, %rax
	movl	%ecx, 64(%rsp)
	movq	64(%rsp), %rdi
	movq	%rax, 80(%rsp)
	movl	84(%rsp), %ecx
	movq	76(%rsp), %rdx
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1242
.L1244:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r12d
	call	cudaGetLastError@PLT
	jmp	.L1278
.L1242:
	movq	40(%rsp), %rsi
	movq	48(%rsp), %xmm0
	movq	%rbx, %rdi
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEENS7_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEEvT0_T1_
	jmp	.L1244
.L1278:
	movl	%eax, %ebx
	testl	%r12d, %r12d
	jne	.L1255
	testl	%eax, %eax
	jne	.L1241
.L1255:
	movl	%r12d, %ebx
	testl	%r12d, %r12d
	jne	.L1241
	call	cudaGetLastError@PLT
	testl	%eax, %eax
	je	.L1246
	movq	%rbp, %rdi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
.L1241:
	call	cudaGetLastError@PLT
.LEHE27:
	testl	%ebx, %ebx
	jne	.L1256
	testl	%eax, %eax
	jne	.L1238
.L1256:
	movl	%ebx, %eax
.L1238:
	movq	%r13, %rdi
	movl	%eax, 12(%rsp)
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movl	12(%rsp), %eax
	movq	104(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1250
	jmp	.L1276
.L1253:
	endbr64
	movq	%rax, %rbx
.L1248:
	movq	%r13, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movq	104(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1276
	movq	%rbx, %rdi
.LEHB28:
	call	_Unwind_Resume@PLT
.LEHE28:
.L1276:
	call	__stack_chk_fail@PLT
.L1250:
	addq	$120, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%rbp
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12736:
	.section	.gcc_except_table
.LLSDA12736:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12736-.LLSDACSB12736
.LLSDACSB12736:
	.uleb128 .LEHB27-.LFB12736
	.uleb128 .LEHE27-.LEHB27
	.uleb128 .L1253-.LFB12736
	.uleb128 0
	.uleb128 .LEHB28-.LFB12736
	.uleb128 .LEHE28-.LEHB28
	.uleb128 0
	.uleb128 0
.LLSDACSE12736:
	.section	.text._ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st,"axG",@progbits,_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st,comdat
	.size	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st, .-_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st
	.section	.text._ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_
	.type	_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_, @function
_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_:
.LFB11757:
	.cfi_startproc
	endbr64
	cmpq	%rdi, %rsi
	je	.L1280
	subq	%rdi, %rsi
	pushq	%rax
	.cfi_def_cfa_offset 16
	movq	%rdi, %rax
	movl	$1, %edx
	movq	%rsi, %rdi
	movq	%rax, %rsi
	movl	$127, %eax
	salq	$55, %rax
	sarq	$2, %rdi
	movq	%rax, %xmm0
	call	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_st
	leaq	.LC82(%rip), %rsi
	movl	%eax, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	leaq	.LC83(%rip), %rsi
	popq	%rdx
	.cfi_def_cfa_offset 8
	movl	%eax, %edi
	jmp	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.L1280:
	ret
	.cfi_endproc
.LFE11757:
	.size	_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_, .-_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_
	.section	.rodata.str1.1
.LC84:
	.string	"/home/ubuntu/Datasets/stackv2/train-structured/mmalenta/PAFINDER_bench/master/benchmarks.cu"
.LC85:
	.string	"Unpacking with texture memory: "
.LC87:
	.string	"s"
.LC88:
	.string	"Unpacking with shared memory: "
.LC89:
	.string	"Unpacking with shared memory with cast to int2 in the function call: "
.LC90:
	.string	"Unpacking with shared memory with the alternative incoming buffer arrangement: "
.LC91:
	.string	"Unoptimised power kernel: "
.LC92:
	.string	"Optimised power kernel: "
.LC93:
	.string	"Optimised power kernel with scaling: "
.LC94:
	.string	"Optimised power kernel with scaling and reversed frequency: "
.LC95:
	.string	"Optimised power kernel with scaling, truncated and reversed frequency: "
.LC96:
	.string	"Double pass scaling factors kernel with division: "
.LC97:
	.string	"Unoptimised scaling factors kernel with division: "
.LC98:
	.string	"Optimised scaling factors kernel: "
	.section	.text.startup
	.globl	main
	.type	main, @function
main:
.LFB11212:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA11212
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movl	$88080384, %edi
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$536, %rsp
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	movq	%fs:40, %rax
	movq	%rax, -56(%rbp)
	xorl	%eax, %eax
.LEHB29:
	call	_Znam@PLT
.LEHE29:
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v
	xorl	%r8d, %r8d
	movl	$1, %edx
	movl	$44040192, %esi
	movq	%rax, %rdi
	movq	%rax, -424(%rbp)
	movq	%r8, -416(%rbp)
	movq	%r8, -408(%rbp)
	movq	%r8, -400(%rbp)
.LEHB30:
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
.LEHE30:
	movq	%rax, -416(%rbp)
	movq	%rax, %rbx
	movq	$44040192, -408(%rbp)
	movq	$44040192, -400(%rbp)
	movw	$0, -296(%rbp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L1286
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1286
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	leaq	.LC80(%rip), %rsi
	call	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	call	__cxa_guard_release@PLT
.L1286:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	testb	%al, %al
	leaq	-192(%rbp), %rax
	movq	%rax, -536(%rbp)
	jne	.L1289
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1289
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	movq	-536(%rbp), %rsi
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %rdi
	movl	$3, -192(%rbp)
	movq	%rax, -184(%rbp)
	call	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	movq	%r12, %rdi
	call	__cxa_guard_release@PLT
.L1289:
	leaq	-296(%rbp), %rax
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %rsi
	movq	%rax, %rdi
	movq	%rax, -528(%rbp)
	call	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	leaq	-264(%rbp), %rax
	xorl	%esi, %esi
	movq	%rax, %rdi
	movl	%esi, -264(%rbp)
	movq	%rax, -544(%rbp)
.LEHB31:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %r12d
	testl	%r15d, %r15d
	jne	.L1394
	testl	%r12d, %r12d
	jne	.L1291
.L1394:
	movl	%r15d, %r12d
	testl	%r15d, %r15d
	jne	.L1291
	movl	$1048597, %edi
	movl	$1, %r9d
	xorl	%r8d, %r8d
	movabsq	$1099511627777, %rax
	movq	%rax, -184(%rbp)
	movl	-184(%rbp), %esi
	salq	$12, %rdi
	movabsq	$4294967297, %rax
	movq	%rax, -176(%rbp)
	movl	-172(%rbp), %ecx
	movq	-180(%rbp), %rdx
	movq	%rbx, -224(%rbp)
	movb	$0, -216(%rbp)
	movq	%rdi, -192(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1293
.L1295:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	jmp	.L1472
.L1293:
	movq	-224(%rbp), %rsi
	movq	-216(%rbp), %rdx
	movl	$44040192, %edi
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIhEEhEEEEvT0_T1_
	jmp	.L1295
.L1472:
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1395
	testl	%ebx, %ebx
	jne	.L1296
.L1395:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1296
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L1296
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
.L1296:
	call	cudaGetLastError@PLT
.LEHE31:
	movl	%eax, %r12d
	testl	%ebx, %ebx
	jne	.L1396
	testl	%eax, %eax
	jne	.L1291
.L1396:
	movl	%ebx, %r12d
.L1291:
	movq	-528(%rbp), %rdi
	leaq	.LC82(%rip), %r13
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movq	%r13, %rsi
	movl	%r12d, %edi
.LEHB32:
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	jmp	.L1473
.L1392:
	endbr64
	movq	%rax, %rbx
.L1300:
	movq	-528(%rbp), %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	jmp	.L1471
.L1473:
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	leaq	.LC83(%rip), %r12
	movl	%eax, %edi
	movq	%r12, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE32:
	call	_ZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_v
	xorl	%ecx, %ecx
	movl	$8, %edx
	movl	$88080384, %esi
	movq	%rax, %rdi
	movq	%rax, -392(%rbp)
	movq	%rcx, -384(%rbp)
	movq	%rcx, -376(%rbp)
	movq	%rcx, -368(%rbp)
.LEHB33:
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
	movq	%rax, %rsi
	movl	$1, %edx
	xorps	%xmm0, %xmm0
	movl	$11010048, %edi
	movq	%rax, -384(%rbp)
	movq	$11010048, -376(%rbp)
	movq	$11010048, -368(%rbp)
	call	_ZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_st
	jmp	.L1474
.L1391:
	endbr64
	movq	%rax, %rbx
.L1301:
	jmp	.L1471
.L1474:
	movl	%eax, %edi
	movq	%r13, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	movq	%r12, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE33:
	leaq	-360(%rbp), %rax
	movl	$1161216, %esi
	movq	%rax, %rdi
	movq	%rax, -552(%rbp)
.LEHB34:
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
.LEHE34:
	jmp	.L1475
.L1390:
	endbr64
	jmp	.L1470
.L1475:
	leaq	-328(%rbp), %rax
	movl	$567, %esi
	movq	%rax, %rdi
	movq	%rax, -560(%rbp)
.LEHB35:
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
.LEHE35:
	movq	-528(%rbp), %rdi
	movl	$567, %esi
.LEHB36:
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
.LEHE36:
	movq	-544(%rbp), %rdi
	movl	$256, %esi
.LEHB37:
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEEC2Em
.LEHE37:
	movq	-256(%rbp), %rax
	movq	%rax, -520(%rbp)
	movq	-240(%rbp), %rax
	leaq	0(,%rax,4), %rbx
	movq	-520(%rbp), %rax
	leaq	(%rax,%rbx), %r14
	movq	%rax, %rdi
	movq	%r14, %rsi
.LEHB38:
	call	_ZN6thrust20THRUST_200700_890_NS8sequenceINS0_6detail15normal_iteratorINS0_10device_ptrIfEEEEEEvT_S7_
	cmpq	%r14, -520(%rbp)
	jne	.L1307
.L1326:
	leaq	-232(%rbp), %r12
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	xorl	%ecx, %ecx
	movl	$32, %edx
	movl	$32, %esi
	movq	%r12, %rdi
	call	cudaCreateChannelDesc@PLT
.LEHE38:
	jmp	.L1476
.L1307:
	movw	$0, -456(%rbp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L1310
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1310
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rdi
	leaq	.LC80(%rip), %rsi
	call	_ZN5nvtx32v120registered_string_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEC1EPKc
	movq	%r14, %rdi
	call	__cxa_guard_release@PLT
.L1310:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r14
	testb	%al, %al
	jne	.L1313
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r15
	movq	%r15, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1313
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	movq	%r14, %rdi
	movq	-536(%rbp), %rsi
	movl	$3, -192(%rbp)
	movq	%rax, -184(%rbp)
	call	_ZN5nvtx32v116event_attributesC1IJEEERKNS0_7messageEDpRKT_
	movq	%r15, %rdi
	call	__cxa_guard_release@PLT
.L1313:
	leaq	-456(%rbp), %rdi
	movq	%r14, %rsi
	call	_ZN4cuda3std3__48optionalIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEEE7emplaceIJRKNS4_16event_attributesEELi0EEERSA_DpOT_.isra.0
	xorl	%edx, %edx
	leaq	-444(%rbp), %rdi
	movl	%edx, -444(%rbp)
.LEHB39:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %r15d
	testl	%r14d, %r14d
	jne	.L1397
	testl	%eax, %eax
	jne	.L1315
.L1397:
	movl	%r14d, %r15d
	testl	%r14d, %r14d
	jne	.L1315
	movq	%rbx, %r14
	xorl	%ecx, %ecx
	movl	$512, %esi
	movl	$1, %r9d
	movq	-520(%rbp), %rax
	sarq	$2, %r14
	testl	$2044, %ebx
	movl	$1, -188(%rbp)
	setne	%cl
	xorl	%r8d, %r8d
	movq	%rax, -224(%rbp)
	movq	%rax, -216(%rbp)
	movq	%r14, %rax
	cqto
	idivq	%rsi
	addq	%rax, %rcx
	movabsq	$1099511627777, %rax
	movq	%rax, -184(%rbp)
	movl	-184(%rbp), %esi
	movabsq	$4294967297, %rax
	movl	%ecx, -192(%rbp)
	movq	-192(%rbp), %rdi
	movq	%rax, -176(%rbp)
	movl	-172(%rbp), %ecx
	movq	-180(%rbp), %rdx
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1317
.L1319:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	jmp	.L1477
.L1317:
	movups	-224(%rbp), %xmm1
	subq	$32, %rsp
	movq	%r14, %rdi
	movups	%xmm1, (%rsp)
	movq	-208(%rbp), %rax
	movq	%rax, 16(%rsp)
	.cfi_escape 0x2e,0x20
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tElN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS7_6detail15normal_iteratorINS7_10device_ptrIfEEEESF_NS9_14no_stencil_tagE13FactorFunctorNS9_21always_true_predicateEEEEEvT0_T1_
	addq	$32, %rsp
	jmp	.L1319
.L1477:
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	testl	%ebx, %ebx
	jne	.L1320
.L1398:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1320
	.cfi_escape 0x2e,0
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L1320
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
.L1320:
	call	cudaGetLastError@PLT
.LEHE39:
	movl	%eax, %r15d
	testl	%ebx, %ebx
	jne	.L1399
	testl	%eax, %eax
	jne	.L1315
.L1399:
	movl	%ebx, %r15d
.L1315:
	leaq	-456(%rbp), %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	movq	%r13, %rsi
	movl	%r15d, %edi
.LEHB40:
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	jmp	.L1478
.L1393:
	endbr64
	movq	%rax, %rbx
.L1324:
	leaq	-456(%rbp), %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	jmp	.L1325
.L1478:
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	movq	%r12, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	jmp	.L1326
.L1476:
	movups	-232(%rbp), %xmm2
	movl	-216(%rbp), %eax
	xorl	%r8d, %r8d
	leaq	-444(%rbp), %rsi
	leaq	-512(%rbp), %rdi
	movl	$786432, %ecx
	movl	$7, %edx
	movl	%eax, -428(%rbp)
	movups	%xmm2, -444(%rbp)
	call	cudaMallocArray@PLT
	movq	-536(%rbp), %rdi
	xorl	%eax, %eax
	leaq	-124(%rbp), %rsi
	movl	$16, %ecx
	movq	-512(%rbp), %rdx
	movl	$1, -128(%rbp)
	rep stosl
	movq	%rsi, %rdi
	movl	$17, %ecx
	movq	-536(%rbp), %rsi
	rep stosl
	movq	%rdx, -184(%rbp)
	xorl	%eax, %eax
	leaq	-128(%rbp), %rdx
	leaq	-504(%rbp), %rdi
	movq	%rax, -504(%rbp)
	call	cudaCreateTextureObject@PLT
	movl	$1, %r9d
	movl	$44040192, %r8d
	xorl	%edx, %edx
	xorl	%esi, %esi
	movq	-568(%rbp), %rcx
	movq	-512(%rbp), %rdi
	call	cudaMemcpyToArray@PLT
	movabsq	$206158430209, %rax
	movl	$32, %r13d
	movl	$1, -484(%rbp)
	movq	%rax, -492(%rbp)
	movabsq	$4294967303, %rax
	movq	%rax, -480(%rbp)
	movabsq	$4398046511105, %rax
	movl	$1, -472(%rbp)
	movq	%rax, -468(%rbp)
	movl	$1, -460(%rbp)
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%rax, %rbx
.L1330:
	movl	-472(%rbp), %ecx
	movq	-480(%rbp), %rdx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	-492(%rbp), %rdi
	movl	-484(%rbp), %esi
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1327
.L1329:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$884, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1479
.L1327:
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-504(%rbp), %rdi
	movl	$128, %edx
	movq	%rax, %rsi
	call	_Z47__device_stub__Z19unpack_original_texyP6float2jyP6float2j
	jmp	.L1329
.L1479:
	decl	%r13d
	jne	.L1330
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%r12, %rdi
	subq	%rbx, %rax
	leaq	-456(%rbp), %rbx
	movq	%rbx, %rsi
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC85(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %r13
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r13, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r14d
	movabsq	$4294967424, %r15
	movq	%rax, %r13
.L1334:
	movl	$268435459, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	salq	$4, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1331
.L1333:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$894, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1480
.L1331:
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	leaq	-424(%rbp), %rdi
	movq	%rax, -520(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv
	movq	-520(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z39__device_stub__Z10unpack_newPKjP6float2PKjP6float2
	jmp	.L1333
.L1480:
	decl	%r14d
	jne	.L1334
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%rbx, %rsi
	movq	%r12, %rdi
	subq	%r13, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC88(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %r13
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r13, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r14d
	movabsq	$4294967424, %r15
	movq	%rax, %r13
.L1338:
	movl	$268435459, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	salq	$4, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1335
.L1337:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$904, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1481
.L1335:
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	leaq	-424(%rbp), %rdi
	movq	%rax, -520(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv
	movq	-520(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z47__device_stub__Z15unpack_new_int2P4int2P6float2P4int2P6float2
	jmp	.L1337
.L1481:
	decl	%r14d
	jne	.L1338
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%r12, %rdi
	movq	%rbx, %rsi
	leaq	_ZSt4cout(%rip), %r12
	subq	%r13, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC89(%rip), %rsi
	movq	%r12, %rdi
	movq	-232(%rbp), %r13
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r13, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r14d
	movabsq	$4294967344, %r15
	movq	%rax, %r13
.L1342:
	movl	-460(%rbp), %ecx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdi
	movq	-468(%rbp), %rdx
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1339
.L1341:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$914, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1482
.L1339:
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	leaq	-424(%rbp), %rdi
	movq	%rax, -520(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIhNS0_16device_allocatorIhEEE4dataEv
	movq	-520(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z39__device_stub__Z10unpack_altPKjP6float2PKjP6float2
	jmp	.L1341
.L1482:
	decl	%r14d
	jne	.L1342
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%rbx, %rsi
	subq	%r13, %rax
	movq	%rax, -456(%rbp)
	leaq	-232(%rbp), %rax
	movq	%rax, %rdi
	movq	%rax, -520(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	movsd	-232(%rbp), %xmm3
	leaq	.LC90(%rip), %rsi
	movq	%r12, %rdi
	movsd	%xmm3, -536(%rbp)
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movsd	.LC86(%rip), %xmm0
	mulsd	-536(%rbp), %xmm0
	movq	%rax, %rdi
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	leaq	.LC87(%rip), %rbx
	movq	%rax, %rdi
	movq	%rbx, %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r14d
	movabsq	$4294967323, %r15
	movq	%rax, %r13
.L1346:
	movl	$268435459, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	salq	$4, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1343
.L1345:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$931, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1483
.L1343:
	leaq	-360(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-392(%rbp), %rdi
	movq	%rax, -536(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-536(%rbp), %rsi
	movl	$128, %r8d
	xorl	%edx, %edx
	movq	%rax, %rdi
	movl	$4, %ecx
	call	_Z52__device_stub__Z21GetPowerAddTimeKernelP6float2PfjjjP6float2Pfjjj
	jmp	.L1345
.L1483:
	decl	%r14d
	jne	.L1346
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-520(%rbp), %rdi
	subq	%r13, %rax
	movq	%rax, -456(%rbp)
	leaq	-456(%rbp), %rax
	movq	%rax, %rsi
	movq	%rax, -536(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC91(%rip), %rsi
	movq	%r12, %rdi
	movq	-232(%rbp), %r13
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r13, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbx, %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r14d
	movabsq	$4294968320, %r15
	movq	%rax, %r13
.L1350:
	movl	$33554433, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	salq	$7, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1347
.L1349:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$942, %edx
	leaq	.LC84(%rip), %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1484
.L1347:
	leaq	-360(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-392(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-568(%rbp), %rsi
	movl	$567, %edx
	movq	%rax, %rdi
	call	_Z48__device_stub__Z19DetectScrunchKernelP6float2PfsP6float2Pfs
	jmp	.L1349
.L1484:
	decl	%r14d
	jne	.L1350
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-536(%rbp), %rsi
	movq	-520(%rbp), %rdi
	subq	%r13, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC92(%rip), %rsi
	movq	%r12, %rdi
	movq	-232(%rbp), %r13
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r13, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbx, %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r13d
	movabsq	$4294968320, %r14
	movq	%rax, %r12
.L1354:
	movl	$33554433, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r14, %rdx
	salq	$7, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r14, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1351
.L1353:
	call	cudaDeviceSynchronize@PLT
	leaq	.LC84(%rip), %r15
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$954, %edx
	movq	%r15, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1485
.L1351:
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, -576(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, %r15
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-392(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-576(%rbp), %r8
	movq	%r15, %rcx
	movq	-568(%rbp), %rsi
	movq	%rax, %rdi
	movl	$567, %edx
	call	_Z59__device_stub__Z24DetectScrunchScaleKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	jmp	.L1353
.L1485:
	decl	%r13d
	jne	.L1354
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-536(%rbp), %rsi
	movq	-520(%rbp), %rdi
	subq	%r12, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC93(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %r12
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r12, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbx, %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r12d
	movabsq	$4294968320, %r13
	movq	%rax, %rbx
.L1358:
	movl	$33554433, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r13, %rdx
	salq	$7, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r13, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1355
.L1357:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$966, %edx
	movq	%r15, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1486
.L1355:
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, %r14
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-392(%rbp), %rdi
	movq	%rax, -520(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-568(%rbp), %r8
	movq	%r14, %rcx
	movq	-520(%rbp), %rsi
	movq	%rax, %rdi
	movl	$567, %edx
	call	_Z62__device_stub__Z27DetectScrunchScaleRevKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	jmp	.L1357
.L1486:
	decl	%r12d
	jne	.L1358
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-536(%rbp), %rsi
	subq	%rbx, %rax
	leaq	-232(%rbp), %rbx
	movq	%rbx, %rdi
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	movsd	-232(%rbp), %xmm5
	leaq	.LC94(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movsd	%xmm5, -520(%rbp)
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movsd	.LC86(%rip), %xmm0
	mulsd	-520(%rbp), %xmm0
	movq	%rax, %rdi
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r13d
	movabsq	$4294968320, %r14
	movq	%rax, %r12
.L1362:
	movl	$33554433, %edi
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r14, %rdx
	salq	$7, %rdi
	movl	$1, %ecx
	movl	$1, %esi
	movq	%r14, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1359
.L1361:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$978, %edx
	movq	%r15, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1487
.L1359:
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, -536(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-392(%rbp), %rdi
	movq	%rax, -520(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseI6float2NS0_16device_allocatorIS3_EEE4dataEv
	movq	-568(%rbp), %r8
	movl	$512, %edx
	movq	-536(%rbp), %rcx
	movq	-520(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z64__device_stub__Z29DetectScrunchScaleTruncKernelP6float2PfsS1_S1_P6float2PfsS1_S1_
	jmp	.L1361
.L1487:
	decl	%r13d
	jne	.L1362
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	%rbx, %rdi
	subq	%r12, %rax
	movq	%rax, -456(%rbp)
	leaq	-456(%rbp), %rax
	movq	%rax, %rsi
	movq	%rax, -520(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC95(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %r12
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r12, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r13d
	movabsq	$4294967808, %r14
	movq	%rax, %r12
.L1366:
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r14, %rdx
	movl	$1, %ecx
	movabsq	$4294967297, %rdi
	movl	$1, %esi
	movq	%r14, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1363
.L1365:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$998, %edx
	movq	%r15, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1488
.L1363:
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, -536(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	movq	-568(%rbp), %rdx
	movl	$512, %ecx
	movq	-536(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z52__device_stub__Z27GetScaleFactorsDoubleKernelPfS_S_iPfS_S_i
	jmp	.L1365
.L1488:
	decl	%r13d
	jne	.L1366
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-520(%rbp), %rsi
	movq	%rbx, %rdi
	subq	%r12, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC96(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %r12
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%r12, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r13d
	movabsq	$4294967808, %r15
	movq	%rax, %r12
.L1370:
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	movl	$1, %ecx
	movabsq	$4294967297, %rdi
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1367
.L1369:
	call	cudaDeviceSynchronize@PLT
	leaq	.LC84(%rip), %r14
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$1011, %edx
	movq	%r14, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1489
.L1367:
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, %r14
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, -536(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	xorl	%r8d, %r8d
	movl	$512, %ecx
	movq	%r14, %rdx
	movq	-536(%rbp), %rsi
	movq	%rax, %rdi
	call	_Z50__device_stub__Z24GetScaleFactorsDivKernelPfS_S_iiPfS_S_ii
	jmp	.L1369
.L1489:
	decl	%r13d
	jne	.L1370
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-520(%rbp), %rsi
	movq	%rbx, %rdi
	subq	%r12, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	leaq	.LC97(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movq	-232(%rbp), %rbx
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rbx, %xmm0
	movq	%rax, %rdi
	mulsd	.LC86(%rip), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movl	$32, %r12d
	movabsq	$4294967808, %r15
	movq	%rax, %rbx
.L1374:
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movq	%r15, %rdx
	movl	$1, %ecx
	movabsq	$4294967297, %rdi
	movl	$1, %esi
	movq	%r15, -232(%rbp)
	movl	$1, -224(%rbp)
	movq	%rdi, -456(%rbp)
	movl	$1, -448(%rbp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	je	.L1371
.L1373:
	call	cudaDeviceSynchronize@PLT
	movl	%eax, %edi
	movl	$1, %ecx
	movl	$1023, %edx
	movq	%r14, %rsi
	call	_Z9gpuAssert9cudaErrorPKcib
	jmp	.L1490
.L1371:
	leaq	-264(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-296(%rbp), %rdi
	movq	%rax, -568(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-328(%rbp), %rdi
	movq	%rax, %r13
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	leaq	-360(%rbp), %rdi
	movq	%rax, -536(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEE4dataEv
	movq	-568(%rbp), %rcx
	xorl	%r9d, %r9d
	movq	-536(%rbp), %rsi
	movq	%rax, %rdi
	movl	$512, %r8d
	movq	%r13, %rdx
	call	_Z49__device_stub__Z21GetScaleFactorsKernelPfS_S_S_iiPfS_S_S_ii
	jmp	.L1373
.L1490:
	decl	%r12d
	jne	.L1374
	call	_ZNSt6chrono3_V212system_clock3nowEv@PLT
	movq	-520(%rbp), %rsi
	leaq	-232(%rbp), %rdi
	subq	%rbx, %rax
	movq	%rax, -456(%rbp)
	call	_ZNSt6chrono8durationIdSt5ratioILl1ELl1EEEC1IlS1_ILl1ELl1000000000EEvEERKNS0_IT_T0_EE
	movsd	-232(%rbp), %xmm7
	leaq	.LC98(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	movsd	%xmm7, -520(%rbp)
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movsd	.LC86(%rip), %xmm0
	mulsd	-520(%rbp), %xmm0
	movq	%rax, %rdi
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	leaq	.LC87(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
.LEHE40:
	leaq	-264(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	leaq	-296(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	leaq	-328(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	leaq	-360(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv
	leaq	-424(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv
	movq	-56(%rbp), %rax
	subq	%fs:40, %rax
	je	.L1380
	jmp	.L1467
.L1389:
	endbr64
	movq	%rax, %rbx
.L1325:
	movq	-544(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	jmp	.L1375
.L1388:
	endbr64
	movq	%rax, %rbx
.L1375:
	movq	-528(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	jmp	.L1376
.L1387:
	endbr64
	movq	%rax, %rbx
.L1376:
	movq	-560(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	jmp	.L1377
.L1386:
	endbr64
	movq	%rax, %rbx
.L1377:
	movq	-552(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIfNS0_16device_allocatorIfEEED2Ev
	jmp	.L1378
.L1385:
	endbr64
.L1470:
	movq	%rax, %rbx
.L1378:
	leaq	-392(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageI6float2NS0_16device_allocatorIS3_EEE10deallocateEv
.L1471:
	leaq	-424(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS0_16device_allocatorIhEEE10deallocateEv
	movq	-56(%rbp), %rax
	subq	%fs:40, %rax
	jne	.L1467
	movq	%rbx, %rdi
.LEHB41:
	call	_Unwind_Resume@PLT
.LEHE41:
.L1467:
	call	__stack_chk_fail@PLT
.L1380:
	leaq	-40(%rbp), %rsp
	xorl	%eax, %eax
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11212:
	.section	.gcc_except_table
.LLSDA11212:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE11212-.LLSDACSB11212
.LLSDACSB11212:
	.uleb128 .LEHB29-.LFB11212
	.uleb128 .LEHE29-.LEHB29
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB30-.LFB11212
	.uleb128 .LEHE30-.LEHB30
	.uleb128 .L1391-.LFB11212
	.uleb128 0
	.uleb128 .LEHB31-.LFB11212
	.uleb128 .LEHE31-.LEHB31
	.uleb128 .L1392-.LFB11212
	.uleb128 0
	.uleb128 .LEHB32-.LFB11212
	.uleb128 .LEHE32-.LEHB32
	.uleb128 .L1391-.LFB11212
	.uleb128 0
	.uleb128 .LEHB33-.LFB11212
	.uleb128 .LEHE33-.LEHB33
	.uleb128 .L1390-.LFB11212
	.uleb128 0
	.uleb128 .LEHB34-.LFB11212
	.uleb128 .LEHE34-.LEHB34
	.uleb128 .L1385-.LFB11212
	.uleb128 0
	.uleb128 .LEHB35-.LFB11212
	.uleb128 .LEHE35-.LEHB35
	.uleb128 .L1386-.LFB11212
	.uleb128 0
	.uleb128 .LEHB36-.LFB11212
	.uleb128 .LEHE36-.LEHB36
	.uleb128 .L1387-.LFB11212
	.uleb128 0
	.uleb128 .LEHB37-.LFB11212
	.uleb128 .LEHE37-.LEHB37
	.uleb128 .L1388-.LFB11212
	.uleb128 0
	.uleb128 .LEHB38-.LFB11212
	.uleb128 .LEHE38-.LEHB38
	.uleb128 .L1389-.LFB11212
	.uleb128 0
	.uleb128 .LEHB39-.LFB11212
	.uleb128 .LEHE39-.LEHB39
	.uleb128 .L1393-.LFB11212
	.uleb128 0
	.uleb128 .LEHB40-.LFB11212
	.uleb128 .LEHE40-.LEHB40
	.uleb128 .L1389-.LFB11212
	.uleb128 0
	.uleb128 .LEHB41-.LFB11212
	.uleb128 .LEHE41-.LEHB41
	.uleb128 0
	.uleb128 0
.LLSDACSE11212:
	.section	.text.startup
	.size	main, .-main
	.weak	_ZTSN4cuda3__410cuda_errorE
	.section	.rodata._ZTSN4cuda3__410cuda_errorE,"aG",@progbits,_ZTSN4cuda3__410cuda_errorE,comdat
	.align 16
	.type	_ZTSN4cuda3__410cuda_errorE, @object
	.size	_ZTSN4cuda3__410cuda_errorE, 24
_ZTSN4cuda3__410cuda_errorE:
	.string	"N4cuda3__410cuda_errorE"
	.weak	_ZTIN4cuda3__410cuda_errorE
	.section	.data.rel.ro._ZTIN4cuda3__410cuda_errorE,"awG",@progbits,_ZTIN4cuda3__410cuda_errorE,comdat
	.align 8
	.type	_ZTIN4cuda3__410cuda_errorE, @object
	.size	_ZTIN4cuda3__410cuda_errorE, 24
_ZTIN4cuda3__410cuda_errorE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN4cuda3__410cuda_errorE
	.quad	_ZTISt13runtime_error
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE, 55
_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE:
	.string	"N6thrust20THRUST_200700_890_NS6system14error_categoryE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE, 16
_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, 70
_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE:
	.string	"N6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, 69
_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE:
	.string	"N6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, 76
_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE:
	.string	"N6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system14error_categoryE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE, 53
_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE:
	.string	"N6thrust20THRUST_200700_890_NS6system12system_errorE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system12system_errorE
	.quad	_ZTISt13runtime_error
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, 56
_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE:
	.string	"N6thrust20THRUST_200700_890_NS6system6detail9bad_allocE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE
	.quad	_ZTISt9bad_alloc
	.weak	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE, 74
_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE:
	.string	"N6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE, 16
_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE, 135
_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE:
	.string	"N6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE, 16
_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, 193
_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE:
	.string	"N6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, 24
_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE
	.quad	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEEE
	.weak	_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE
	.section	.rodata._ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,"aG",@progbits,_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,comdat
	.align 32
	.type	_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, @object
	.size	_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, 228
_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE:
	.string	"N6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE"
	.weak	_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE
	.section	.data.rel.ro._ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,"awG",@progbits,_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,comdat
	.align 8
	.type	_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, @object
	.size	_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, 24
_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE
	.quad	_ZTIN6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEEE
	.weak	_ZTVN4cuda3__410cuda_errorE
	.section	.data.rel.ro._ZTVN4cuda3__410cuda_errorE,"awG",@progbits,_ZTVN4cuda3__410cuda_errorE,comdat
	.align 8
	.type	_ZTVN4cuda3__410cuda_errorE, @object
	.size	_ZTVN4cuda3__410cuda_errorE, 40
_ZTVN4cuda3__410cuda_errorE:
	.quad	0
	.quad	_ZTIN4cuda3__410cuda_errorE
	.quad	_ZN4cuda3__410cuda_errorD1Ev
	.quad	_ZN4cuda3__410cuda_errorD0Ev
	.quad	_ZNKSt13runtime_error4whatEv
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE, 72
_ZTVN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail22generic_error_categoryD0Ev
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category4nameEv
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category23default_error_conditionEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE, 72
_ZTVN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail21system_error_categoryD0Ev
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category4nameEv
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category7messageB5cxx11Ei
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE, 72
_ZTVN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_categoryD0Ev
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category4nameEv
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category23default_error_conditionEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentEiRKNS1_15error_conditionE
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system14error_category10equivalentERKNS1_10error_codeEi
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE, 40
_ZTVN6thrust20THRUST_200700_890_NS6system12system_errorE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system12system_errorE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE, 40
_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev
	.quad	_ZNK6thrust20THRUST_200700_890_NS6system6detail9bad_alloc4whatEv
	.weak	_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE, 56
_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE
	.quad	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED0Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE11do_allocateEmm
	.quad	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEE13do_deallocateESB_mm
	.quad	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS5_EENS0_11use_defaultEEEE11do_is_equalERKSA_
	.weak	_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE
	.section	.data.rel.ro.local._ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,"awG",@progbits,_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE,comdat
	.align 8
	.type	_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, @object
	.size	_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE, 56
_ZTVN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE:
	.quad	0
	.quad	_ZTIN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEEE
	.quad	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED1Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED0Ev
	.quad	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
	.quad	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE13do_deallocateENS0_10device_ptrIvEEmm
	.quad	_ZNK6thrust20THRUST_200700_890_NS2mr15memory_resourceINS0_10device_ptrIvEEE11do_is_equalERKS5_
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub10__tabulate7functorINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEENS4_6system6detail7generic6detail22compute_sequence_valueIfvEElEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d
	.section	.bss._ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d,"awG",@nobits,_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d,comdat
	.align 8
	.type	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d, @gnu_unique_object
	.size	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d, 8
_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d:
	.zero	8
	.weak	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d
	.section	.bss._ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d,"awG",@nobits,_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d,comdat
	.align 8
	.type	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d, @gnu_unique_object
	.size	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d, 8
_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d:
	.zero	8
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIfEEfEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrI6float2EES9_EEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIhEEhEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkIlN6thrust20THRUST_200700_890_NS8cuda_cub11__transform17unary_transform_fINS4_6detail15normal_iteratorINS4_10device_ptrIfEEEESC_NS6_14no_stencil_tagE13FactorFunctorNS6_21always_true_predicateEEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource
	.section	.bss._ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource,"awG",@nobits,_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource,comdat
	.align 8
	.type	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource, @gnu_unique_object
	.size	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource, 8
_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource:
	.zero	8
	.weak	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource
	.section	.data.rel.local._ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource,"awG",@progbits,_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource,comdat
	.align 8
	.type	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource, @gnu_unique_object
	.size	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource, 8
_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource:
	.quad	_ZTVN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEEE+16
	.weak	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource
	.section	.bss._ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource,"awG",@nobits,_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource,comdat
	.align 8
	.type	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource, @gnu_unique_object
	.size	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource, 8
_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource:
	.zero	8
	.weak	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource
	.section	.bss._ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource,"awG",@nobits,_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource,comdat
	.align 16
	.type	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource, @gnu_unique_object
	.size	_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource, 16
_ZZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvSA_EENS0_11use_defaultEEEEEEEEEPT_vE8resource:
	.zero	16
	.weak	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache, 8
_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache
	.section	.bss._ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache, 1536
_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache:
	.zero	1536
	.section	.nvFatBinSegment,"aw"
	.align 8
	.type	_ZL15__fatDeviceText, @object
	.size	_ZL15__fatDeviceText, 24
_ZL15__fatDeviceText:
	.long	1180844977
	.long	1
	.quad	fatbinData
	.quad	0
	.local	_ZL20__cudaFatCubinHandle
	.comm	_ZL20__cudaFatCubinHandle,8,8
	.weak	_ZN4cuda3std3__420unreachable_sentinelE
	.section	.rodata._ZN4cuda3std3__420unreachable_sentinelE,"aG",@progbits,_ZN4cuda3std3__420unreachable_sentinelE,comdat
	.type	_ZN4cuda3std3__420unreachable_sentinelE, @gnu_unique_object
	.size	_ZN4cuda3std3__420unreachable_sentinelE, 1
_ZN4cuda3std3__420unreachable_sentinelE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo5crendE
	.section	.rodata._ZN4cuda3std3__45__cpo5crendE,"aG",@progbits,_ZN4cuda3std3__45__cpo5crendE,comdat
	.type	_ZN4cuda3std3__45__cpo5crendE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo5crendE, 1
_ZN4cuda3std3__45__cpo5crendE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo7crbeginE
	.section	.rodata._ZN4cuda3std3__45__cpo7crbeginE,"aG",@progbits,_ZN4cuda3std3__45__cpo7crbeginE,comdat
	.type	_ZN4cuda3std3__45__cpo7crbeginE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo7crbeginE, 1
_ZN4cuda3std3__45__cpo7crbeginE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo4rendE
	.section	.rodata._ZN4cuda3std3__45__cpo4rendE,"aG",@progbits,_ZN4cuda3std3__45__cpo4rendE,comdat
	.type	_ZN4cuda3std3__45__cpo4rendE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo4rendE, 1
_ZN4cuda3std3__45__cpo4rendE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo6rbeginE
	.section	.rodata._ZN4cuda3std3__45__cpo6rbeginE,"aG",@progbits,_ZN4cuda3std3__45__cpo6rbeginE,comdat
	.type	_ZN4cuda3std3__45__cpo6rbeginE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo6rbeginE, 1
_ZN4cuda3std3__45__cpo6rbeginE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo8distanceE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo8distanceE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo8distanceE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo8distanceE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo8distanceE, 1
_ZN4cuda3std6ranges3__45__cpo8distanceE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo5ssizeE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo5ssizeE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo5ssizeE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo5ssizeE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo5ssizeE, 1
_ZN4cuda3std6ranges3__45__cpo5ssizeE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4sizeE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4sizeE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4sizeE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4sizeE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4sizeE, 1
_ZN4cuda3std6ranges3__45__cpo4sizeE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo5cdataE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo5cdataE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo5cdataE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo5cdataE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo5cdataE, 1
_ZN4cuda3std6ranges3__45__cpo5cdataE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4dataE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4dataE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4dataE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4dataE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4dataE, 1
_ZN4cuda3std6ranges3__45__cpo4dataE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4prevE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4prevE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4prevE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4prevE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4prevE, 1
_ZN4cuda3std6ranges3__45__cpo4prevE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4nextE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4nextE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4nextE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4nextE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4nextE, 1
_ZN4cuda3std6ranges3__45__cpo4nextE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo9iter_swapE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo9iter_swapE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo9iter_swapE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo9iter_swapE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo9iter_swapE, 1
_ZN4cuda3std6ranges3__45__cpo9iter_swapE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4cendE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4cendE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4cendE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4cendE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4cendE, 1
_ZN4cuda3std6ranges3__45__cpo4cendE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo6cbeginE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo6cbeginE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo6cbeginE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo6cbeginE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo6cbeginE, 1
_ZN4cuda3std6ranges3__45__cpo6cbeginE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo3endE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo3endE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo3endE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo3endE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo3endE, 1
_ZN4cuda3std6ranges3__45__cpo3endE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo5beginE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo5beginE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo5beginE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo5beginE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo5beginE, 1
_ZN4cuda3std6ranges3__45__cpo5beginE:
	.zero	1
	.weak	_ZN4cuda3std3__47nulloptE
	.section	.rodata._ZN4cuda3std3__47nulloptE,"aG",@progbits,_ZN4cuda3std3__47nulloptE,comdat
	.type	_ZN4cuda3std3__47nulloptE, @gnu_unique_object
	.size	_ZN4cuda3std3__47nulloptE, 1
_ZN4cuda3std3__47nulloptE:
	.zero	1
	.hidden	InitializeInjectionNvtx2_fnptr
	.weak	InitializeInjectionNvtx2_fnptr
	.bss
	.align 8
	.type	InitializeInjectionNvtx2_fnptr, @object
	.size	InitializeInjectionNvtx2_fnptr, 8
InitializeInjectionNvtx2_fnptr:
	.zero	8
	.hidden	nvtxGlobals_v3
	.weak	nvtxGlobals_v3
	.section	.data.rel.local,"aw"
	.align 32
	.type	nvtxGlobals_v3, @object
	.size	nvtxGlobals_v3, 1168
nvtxGlobals_v3:
	.long	0
	.zero	4
	.quad	16
	.quad	nvtxEtiGetModuleFunctionTable_v3
	.quad	24
	.long	3
	.long	0
	.quad	nvtxEtiSetInjectionNvtxVersion_v3
	.quad	nvtxMarkEx_impl_init_v3
	.quad	nvtxMarkA_impl_init_v3
	.quad	nvtxMarkW_impl_init_v3
	.quad	nvtxRangeStartEx_impl_init_v3
	.quad	nvtxRangeStartA_impl_init_v3
	.quad	nvtxRangeStartW_impl_init_v3
	.quad	nvtxRangeEnd_impl_init_v3
	.quad	nvtxRangePushEx_impl_init_v3
	.quad	nvtxRangePushA_impl_init_v3
	.quad	nvtxRangePushW_impl_init_v3
	.quad	nvtxRangePop_impl_init_v3
	.quad	nvtxNameCategoryA_impl_init_v3
	.quad	nvtxNameCategoryW_impl_init_v3
	.quad	nvtxNameOsThreadA_impl_init_v3
	.quad	nvtxNameOsThreadW_impl_init_v3
	.quad	nvtxNameCuDeviceA_impl_init_v3
	.quad	nvtxNameCuDeviceW_impl_init_v3
	.quad	nvtxNameCuContextA_impl_init_v3
	.quad	nvtxNameCuContextW_impl_init_v3
	.quad	nvtxNameCuStreamA_impl_init_v3
	.quad	nvtxNameCuStreamW_impl_init_v3
	.quad	nvtxNameCuEventA_impl_init_v3
	.quad	nvtxNameCuEventW_impl_init_v3
	.quad	nvtxNameClDeviceA_impl_init_v3
	.quad	nvtxNameClDeviceW_impl_init_v3
	.quad	nvtxNameClContextA_impl_init_v3
	.quad	nvtxNameClContextW_impl_init_v3
	.quad	nvtxNameClCommandQueueA_impl_init_v3
	.quad	nvtxNameClCommandQueueW_impl_init_v3
	.quad	nvtxNameClMemObjectA_impl_init_v3
	.quad	nvtxNameClMemObjectW_impl_init_v3
	.quad	nvtxNameClSamplerA_impl_init_v3
	.quad	nvtxNameClSamplerW_impl_init_v3
	.quad	nvtxNameClProgramA_impl_init_v3
	.quad	nvtxNameClProgramW_impl_init_v3
	.quad	nvtxNameClEventA_impl_init_v3
	.quad	nvtxNameClEventW_impl_init_v3
	.quad	nvtxNameCudaDeviceA_impl_init_v3
	.quad	nvtxNameCudaDeviceW_impl_init_v3
	.quad	nvtxNameCudaStreamA_impl_init_v3
	.quad	nvtxNameCudaStreamW_impl_init_v3
	.quad	nvtxNameCudaEventA_impl_init_v3
	.quad	nvtxNameCudaEventW_impl_init_v3
	.quad	nvtxDomainMarkEx_impl_init_v3
	.quad	nvtxDomainRangeStartEx_impl_init_v3
	.quad	nvtxDomainRangeEnd_impl_init_v3
	.quad	nvtxDomainRangePushEx_impl_init_v3
	.quad	nvtxDomainRangePop_impl_init_v3
	.quad	nvtxDomainResourceCreate_impl_init_v3
	.quad	nvtxDomainResourceDestroy_impl_init_v3
	.quad	nvtxDomainNameCategoryA_impl_init_v3
	.quad	nvtxDomainNameCategoryW_impl_init_v3
	.quad	nvtxDomainRegisterStringA_impl_init_v3
	.quad	nvtxDomainRegisterStringW_impl_init_v3
	.quad	nvtxDomainCreateA_impl_init_v3
	.quad	nvtxDomainCreateW_impl_init_v3
	.quad	nvtxDomainDestroy_impl_init_v3
	.quad	nvtxInitialize_impl_init_v3
	.quad	nvtxDomainSyncUserCreate_impl_init_v3
	.quad	nvtxDomainSyncUserDestroy_impl_init_v3
	.quad	nvtxDomainSyncUserAcquireStart_impl_init_v3
	.quad	nvtxDomainSyncUserAcquireFailed_impl_init_v3
	.quad	nvtxDomainSyncUserAcquireSuccess_impl_init_v3
	.quad	nvtxDomainSyncUserReleasing_impl_init_v3
	.quad	0
	.quad	nvtxGlobals_v3+48
	.quad	nvtxGlobals_v3+56
	.quad	nvtxGlobals_v3+64
	.quad	nvtxGlobals_v3+72
	.quad	nvtxGlobals_v3+80
	.quad	nvtxGlobals_v3+88
	.quad	nvtxGlobals_v3+96
	.quad	nvtxGlobals_v3+104
	.quad	nvtxGlobals_v3+112
	.quad	nvtxGlobals_v3+120
	.quad	nvtxGlobals_v3+128
	.quad	nvtxGlobals_v3+136
	.quad	nvtxGlobals_v3+144
	.quad	nvtxGlobals_v3+152
	.quad	nvtxGlobals_v3+160
	.quad	0
	.quad	0
	.quad	nvtxGlobals_v3+168
	.quad	nvtxGlobals_v3+176
	.quad	nvtxGlobals_v3+184
	.quad	nvtxGlobals_v3+192
	.quad	nvtxGlobals_v3+200
	.quad	nvtxGlobals_v3+208
	.quad	nvtxGlobals_v3+216
	.quad	nvtxGlobals_v3+224
	.quad	0
	.quad	0
	.quad	nvtxGlobals_v3+232
	.quad	nvtxGlobals_v3+240
	.quad	nvtxGlobals_v3+248
	.quad	nvtxGlobals_v3+256
	.quad	nvtxGlobals_v3+264
	.quad	nvtxGlobals_v3+272
	.quad	nvtxGlobals_v3+280
	.quad	nvtxGlobals_v3+288
	.quad	nvtxGlobals_v3+296
	.quad	nvtxGlobals_v3+304
	.quad	nvtxGlobals_v3+312
	.quad	nvtxGlobals_v3+320
	.quad	nvtxGlobals_v3+328
	.quad	nvtxGlobals_v3+336
	.quad	0
	.quad	0
	.quad	nvtxGlobals_v3+344
	.quad	nvtxGlobals_v3+352
	.quad	nvtxGlobals_v3+360
	.quad	nvtxGlobals_v3+368
	.quad	nvtxGlobals_v3+376
	.quad	nvtxGlobals_v3+384
	.quad	0
	.quad	0
	.quad	nvtxGlobals_v3+392
	.quad	nvtxGlobals_v3+400
	.quad	nvtxGlobals_v3+408
	.quad	nvtxGlobals_v3+416
	.quad	nvtxGlobals_v3+424
	.quad	nvtxGlobals_v3+432
	.quad	nvtxGlobals_v3+440
	.quad	nvtxGlobals_v3+448
	.quad	nvtxGlobals_v3+456
	.quad	nvtxGlobals_v3+464
	.quad	nvtxGlobals_v3+472
	.quad	nvtxGlobals_v3+480
	.quad	nvtxGlobals_v3+488
	.quad	nvtxGlobals_v3+496
	.quad	nvtxGlobals_v3+504
	.quad	0
	.quad	0
	.quad	nvtxGlobals_v3+512
	.quad	nvtxGlobals_v3+520
	.quad	nvtxGlobals_v3+528
	.quad	nvtxGlobals_v3+536
	.quad	nvtxGlobals_v3+544
	.quad	nvtxGlobals_v3+552
	.quad	0
	.section	.rodata
	.type	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL10par_nosyncE, @object
	.size	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL10par_nosyncE, 1
_ZN6thrust20THRUST_200700_890_NS8cuda_cubL10par_nosyncE:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL3parE, @object
	.size	_ZN6thrust20THRUST_200700_890_NS8cuda_cubL3parE, 1
_ZN6thrust20THRUST_200700_890_NS8cuda_cubL3parE:
	.zero	1
	.weak	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result
	.section	.bss._ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result,comdat
	.align 8
	.type	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result, @gnu_unique_object
	.size	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result, 8
_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result:
	.zero	8
	.weak	_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result
	.section	.bss._ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result,"awG",@nobits,_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result,comdat
	.align 8
	.type	_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result, @gnu_unique_object
	.size	_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result, 8
_ZZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result:
	.zero	8
	.weak	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result
	.section	.bss._ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result,comdat
	.align 8
	.type	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result, @gnu_unique_object
	.size	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result, 8
_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result:
	.zero	8
	.weak	_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result
	.section	.bss._ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result,"awG",@nobits,_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result,comdat
	.align 8
	.type	_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result, @gnu_unique_object
	.size	_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result, 8
_ZZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result:
	.zero	8
	.weak	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result
	.section	.bss._ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result,comdat
	.align 8
	.type	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result, @gnu_unique_object
	.size	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result, 8
_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result:
	.zero	8
	.weak	_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result
	.section	.bss._ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result,"awG",@nobits,_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result,comdat
	.align 8
	.type	_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result, @gnu_unique_object
	.size	_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result, 8
_ZZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result:
	.zero	8
	.weak	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err
	.section	.bss._ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err,"awG",@nobits,_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err,comdat
	.align 8
	.type	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err, @gnu_unique_object
	.size	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err, 8
_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err:
	.zero	8
	.weak	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err
	.section	.bss._ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err,"awG",@nobits,_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err,comdat
	.align 32
	.type	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err, @gnu_unique_object
	.size	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err, 32
_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err:
	.zero	32
	.section	.rodata
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL3_10E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL3_10E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL3_10E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_9E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_9E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_9E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_8E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_8E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_8E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_7E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_7E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_7E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_6E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_6E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_6E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_5E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_5E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_5E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_4E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_4E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_4E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_3E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_3E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_3E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_2E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_2E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_2E:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_1E, @object
	.size	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_1E, 1
_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_1E:
	.zero	1
	.weak	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count, 8
_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count
	.section	.bss._ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count,comdat
	.align 4
	.type	_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count, 4
_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count:
	.zero	4
	.section	.rodata
	.type	_ZN6thrust20THRUST_200700_890_NSL3seqE, @object
	.size	_ZN6thrust20THRUST_200700_890_NSL3seqE, 1
_ZN6thrust20THRUST_200700_890_NSL3seqE:
	.zero	1
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail10sequentialL3seqE, @object
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail10sequentialL3seqE, 1
_ZN6thrust20THRUST_200700_890_NS6system6detail10sequentialL3seqE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo7advanceE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo7advanceE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo7advanceE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo7advanceE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo7advanceE, 1
_ZN4cuda3std6ranges3__45__cpo7advanceE:
	.zero	1
	.hidden	_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE
	.weak	_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE
	.section	.rodata._ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE,"aG",@progbits,_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE,comdat
	.type	_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE, @gnu_unique_object
	.size	_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE, 1
_ZN4cuda3std3__446_GLOBAL__N__5222f61c_13_benchmarks_cu_2d511c286ignoreE:
	.zero	1
	.weak	_ZN4cuda3std3__48in_placeE
	.section	.rodata._ZN4cuda3std3__48in_placeE,"aG",@progbits,_ZN4cuda3std3__48in_placeE,comdat
	.type	_ZN4cuda3std3__48in_placeE, @gnu_unique_object
	.size	_ZN4cuda3std3__48in_placeE, 1
_ZN4cuda3std3__48in_placeE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo4cendE
	.section	.rodata._ZN4cuda3std3__45__cpo4cendE,"aG",@progbits,_ZN4cuda3std3__45__cpo4cendE,comdat
	.type	_ZN4cuda3std3__45__cpo4cendE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo4cendE, 1
_ZN4cuda3std3__45__cpo4cendE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo6cbeginE
	.section	.rodata._ZN4cuda3std3__45__cpo6cbeginE,"aG",@progbits,_ZN4cuda3std3__45__cpo6cbeginE,comdat
	.type	_ZN4cuda3std3__45__cpo6cbeginE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo6cbeginE, 1
_ZN4cuda3std3__45__cpo6cbeginE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo3endE
	.section	.rodata._ZN4cuda3std3__45__cpo3endE,"aG",@progbits,_ZN4cuda3std3__45__cpo3endE,comdat
	.type	_ZN4cuda3std3__45__cpo3endE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo3endE, 1
_ZN4cuda3std3__45__cpo3endE:
	.zero	1
	.weak	_ZN4cuda3std3__45__cpo5beginE
	.section	.rodata._ZN4cuda3std3__45__cpo5beginE,"aG",@progbits,_ZN4cuda3std3__45__cpo5beginE,comdat
	.type	_ZN4cuda3std3__45__cpo5beginE, @gnu_unique_object
	.size	_ZN4cuda3std3__45__cpo5beginE, 1
_ZN4cuda3std3__45__cpo5beginE:
	.zero	1
	.weak	_ZN4cuda3std3__419piecewise_constructE
	.section	.rodata._ZN4cuda3std3__419piecewise_constructE,"aG",@progbits,_ZN4cuda3std3__419piecewise_constructE,comdat
	.type	_ZN4cuda3std3__419piecewise_constructE, @gnu_unique_object
	.size	_ZN4cuda3std3__419piecewise_constructE, 1
_ZN4cuda3std3__419piecewise_constructE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo9iter_moveE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo9iter_moveE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo9iter_moveE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo9iter_moveE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo9iter_moveE, 1
_ZN4cuda3std6ranges3__45__cpo9iter_moveE:
	.zero	1
	.weak	_ZN4cuda3std6ranges3__45__cpo4swapE
	.section	.rodata._ZN4cuda3std6ranges3__45__cpo4swapE,"aG",@progbits,_ZN4cuda3std6ranges3__45__cpo4swapE,comdat
	.type	_ZN4cuda3std6ranges3__45__cpo4swapE, @gnu_unique_object
	.size	_ZN4cuda3std6ranges3__45__cpo4swapE, 1
_ZN4cuda3std6ranges3__45__cpo4swapE:
	.zero	1
	.section	.rodata.cst8,"aM",@progbits,8
	.align 8
.LC78:
	.long	0
	.long	1104006501
	.align 8
.LC86:
	.long	0
	.long	1067450368
	.hidden	DW.ref.__gxx_personality_v0
	.weak	DW.ref.__gxx_personality_v0
	.section	.data.rel.local.DW.ref.__gxx_personality_v0,"awG",@progbits,DW.ref.__gxx_personality_v0,comdat
	.align 8
	.type	DW.ref.__gxx_personality_v0, @object
	.size	DW.ref.__gxx_personality_v0, 8
DW.ref.__gxx_personality_v0:
	.quad	__gxx_personality_v0
	.hidden	__dso_handle
	.ident	"GCC: (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:

#include <chrono>
#include <iostream>

#include "thrust/device_vector.h"
#include <thrust/sequence.h>
#include <thrust/transform.h>
#include "hip/hip_complex.h"
#include "hipfft/hipfft.h"
#include "hip/hip_runtime.h"

#define NACC 256
#define NFPGAS 48
#define NCHAN_COARSE 336
#define NCHAN_FINE_IN 32
#define NCHAN_FINE_OUT 27
#define NACCUMULATE 128 
#define NPOL 2
#define NSAMPS 4
#define NCHAN_SUM 16
#define NSAMP_PER_PACKET 128
#define NCHAN_PER_PACKET 7
#define HEADLEN 64
#define NSAMPS_SUMMED 2


#define gpuErrchk(ans) { gpuAssert((ans), __FILE__, __LINE__); }

using std::cerr;
using std::cout;
using std::endl;

#define XSIZE 7
#define YSIZE 128
#define ZSIZE 48

inline void gpuAssert(hipError_t code, const char *file, int line, bool abort=true) {
    if (code != hipSuccess) {
        fprintf(stderr,"GPUassert: %s %s %d\n", hipGetErrorString(code), file, line);
        if (abort) exit(code);
    }
}

/*void UnpackCpu(void) {
    #pragma unroll
    for (int chan = 0; chan < 7; chan++) {
        for (int sample = 0; sample < 128; sample++) {
            idx = (sample * 7 + chan) * BYTES_PER_WORD;    // get the  start of the word in the received data array
            idx2 = chan * 128 + sample + startidx;        // get the position in the buffer
            h_pol[idx2].x = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 7] | (data[HEADLEN + idx + 6] << 8)));
            h_pol[idx2].y = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 5] | (data[HEADLEN + idx + 4] << 8)));
            h_pol[idx2 + d_in_size / 2].x = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 3] | (data[HEADLEN + idx + 2] << 8)));
            h_pol[idx2 + d_in_size / 2].y = static_cast<float>(static_cast<short>(data[HEADLEN + idx + 1] | (data[HEADLEN + idx + 0] << 8)));
        }
    }
} */

__global__ void unpack_original_tex(hipTextureObject_t texObj, hipfftComplex * __restrict__ out, unsigned int acc)
{

    int xidx = blockIdx.x * blockDim.x + threadIdx.x;
    int yidx = blockIdx.y * 128;
    int chanidx = threadIdx.x + blockIdx.y * 7;
    int skip;
    int2 word;

    for (int ac = 0; ac < acc; ac++) {
        skip = 336 * 128 * 2 * ac;
        for (int sample = 0; sample < YSIZE; sample++) {
            word = tex2D<int2>(texObj, xidx, yidx + ac * 48 * 128 + sample);
            out[skip + chanidx * YSIZE * 2 + sample].x = static_cast<float>(static_cast<short>(((word.y & 0xff000000) >> 24) | ((word.y & 0xff0000) >> 8)));
            out[skip + chanidx * YSIZE * 2 + sample].y = static_cast<float>(static_cast<short>(((word.y & 0xff00) >> 8) | ((word.y & 0xff) << 8)));
            out[skip + chanidx * YSIZE * 2 + YSIZE + sample].x = static_cast<float>(static_cast<short>(((word.x & 0xff000000) >> 24) | ((word.x & 0xff0000) >> 8)));
            out[skip + chanidx * YSIZE * 2 + YSIZE + sample].y = static_cast<float>(static_cast<short>(((word.x & 0xff00) >> 8) | ((word.x & 0xff) << 8)));
        }
    }
}

__global__ void unpack_new(const unsigned int *__restrict__ in, hipfftComplex * __restrict__ out)
{

    int skip = 0;

    __shared__ unsigned int accblock[1792];
    
    int chan = 0;
    int time = 0;
    int line = 0;

    hipfftComplex cpol;
    int polint;
    int2 tmp;

    int outskip = 0;

    for (int iacc = 0; iacc < NACCUMULATE; ++iacc) {
        // NOTE: This is skipping whole words as in will be cast to int2
        skip = iacc * NCHAN_COARSE * NSAMP_PER_PACKET + blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET;
       
        for (int ichunk = 0; ichunk < 7; ++ichunk) {
            line = ichunk * blockDim.x + threadIdx.x;
            chan = line % 7;
            time = line / 7;
            tmp = ((int2*)in)[skip + line];
            accblock[chan * NSAMP_PER_PACKET + time] = tmp.y;
            accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + chan * NSAMP_PER_PACKET + time] = tmp.x;
        }

        __syncthreads();
        
        skip = NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE;
        
        outskip = blockIdx.x * 7 * NSAMP_PER_PACKET * NACCUMULATE + iacc * NSAMP_PER_PACKET;

        for (chan = 0; chan < NCHAN_PER_PACKET; ++chan) {
            /*polaint = accblock[ichan * NSAMP_PER_PACKET + threadIdx.x];
            polbint = accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + ichan * NSAMP_PER_PACKET + threadIdx.x];
            pola.x = static_cast<float>(static_cast<short>( ((polaint & 0xff000000) >> 24) | ((polaint & 0xff0000) >> 8) ));
            pola.y = static_cast<float>(static_cast<short>( ((polaint & 0xff00) >> 8) | ((polaint & 0xff) << 8) )); 
	    
            polb.x = static_cast<float>(static_cast<short>( ((polbint & 0xff000000) >> 24) | ((polbint & 0xff0000) >> 8) ));
            polb.y = static_cast<float>(static_cast<short>( ((polbint & 0xff00) >> 8) | ((polbint & 0xff) << 8) )); 
            */

            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x];
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));
            out[outskip + threadIdx.x] = cpol;

            polint = accblock[NSAMP_PER_PACKET * NCHAN_PER_PACKET + chan * NSAMP_PER_PACKET + threadIdx.x];
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));

            out[skip + outskip + threadIdx.x] = cpol;

            outskip += NSAMP_PER_PACKET * NACCUMULATE;

        }

    } 

}

__global__ void unpack_new_int2(int2 *__restrict__ in, hipfftComplex *__restrict__ out) {

    int skip = 0;

    __shared__ int2 accblock[896];

    int chan = 0;
    int time = 0;
    int line = 0;

    hipfftComplex cpol;
    int polint;

    int outskip = 0;

    for (int iacc = 0; iacc < NACCUMULATE; ++iacc) {
        // NOTE: This is skipping whole words as in will be cast to int2
        // skip = iacc * NCHAN_COARSE * NSAMP_PER_PACKET + blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET;

        skip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE + iacc * NCHAN_PER_PACKET * NSAMP_PER_PACKET;

        for (int ichunk = 0; ichunk < 7; ++ichunk) {
            line = ichunk * blockDim.x + threadIdx.x;
            chan = line % 7;
            time = line / 7;
            accblock[chan * NSAMP_PER_PACKET + time] = in[skip + line];
        }

        __syncthreads();

        skip = NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE;

        outskip = blockIdx.x * 7 * NSAMP_PER_PACKET * NACCUMULATE + iacc * NSAMP_PER_PACKET;

        for (chan = 0; chan < NCHAN_PER_PACKET; ++chan) {
            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x].y;
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));
            out[outskip + threadIdx.x] = cpol;

            polint = accblock[chan * NSAMP_PER_PACKET + threadIdx.x].x;
            cpol.x = static_cast<float>(static_cast<short>( ((polint & 0xff000000) >> 24) | ((polint & 0xff0000) >> 8) ));
            cpol.y = static_cast<float>(static_cast<short>( ((polint & 0xff00) >> 8) | ((polint & 0xff) << 8) ));

            out[skip + outskip + threadIdx.x] = cpol;

            outskip += NSAMP_PER_PACKET * NACCUMULATE;
        }
    }
}

__global__ void unpack_alt(const unsigned int *__restrict__ in, hipfftComplex * __restrict__ out) {

    if (threadIdx.x == 1022 || threadIdx.x == 1023)
        return; 

    __shared__ unsigned int accblock[2044];

    int inskip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NPOL * NACCUMULATE;
    int outskip = blockIdx.x * NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE;

    int time = 0;
    int chan = 0;
    int line = 0;

    hipfftComplex pola, polb;

    int polaint;
    int polbint;


    // NOTE: That will leave last 224 lines unprocessed
    // This can fit in 7 full warps of 32
    for (int iacc = 0; iacc < 113; ++iacc) {

        line = iacc * blockDim.y + threadIdx.y;

        if (line < NCHAN_PER_PACKET * NSAMP_PER_PACKET * NACCUMULATE) {

        chan = threadIdx.y % 7;
        time = threadIdx.y / 7;        
 
        accblock[chan * 146 + time] = in[inskip + threadIdx.y * NPOL];
        accblock[NCHAN_PER_PACKET * 146 + chan * 146 + time] = in[inskip + threadIdx.y * NPOL + 1];
        inskip += 2044;
        
        __syncthreads();

        polbint = accblock[threadIdx.y];
        polaint = accblock[NCHAN_PER_PACKET * 146 + threadIdx.y];

        pola.x = static_cast<float>(static_cast<short>( ((polaint & 0xff000000) >> 24) | ((polaint & 0xff0000) >> 8) ));
        pola.y = static_cast<float>(static_cast<short>( ((polaint & 0xff00) >> 8) | ((polaint & 0xff) << 8) ));

        polb.x = static_cast<float>(static_cast<short>( ((polbint & 0xff000000) >> 24) | ((polbint & 0xff0000) >> 8) ));
        polb.y = static_cast<float>(static_cast<short>( ((polbint & 0xff00) >> 8) | ((polbint & 0xff) << 8) ));

        chan = threadIdx.y / 146;
        time = threadIdx.y % 146; 

        out[outskip + chan * NSAMP_PER_PACKET * NACCUMULATE + time] = pola;
        out[NCHAN_COARSE * NSAMP_PER_PACKET * NACCUMULATE + outskip + chan * NSAMP_PER_PACKET * NACCUMULATE + time] = polb;
        outskip += 146;

        }
    }
}

__global__ void powertimefreq_new_hardcoded(
  hipComplex* __restrict__ in,
  float* __restrict__ out)
{

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE];

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;

  if (lane_idx >= NCHAN_FINE_OUT)
    return;

  int offset = blockIdx.x * NCHAN_COARSE * NPOL * NSAMPS * NCHAN_FINE_IN;
  int out_offset = blockIdx.x * NCHAN_COARSE * NCHAN_FINE_OUT / NCHAN_SUM;

  for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += warpSize)
    {
      float real = 0.0f;
      float imag = 0.0f;
      int coarse_chan_offset = offset + coarse_chan_idx * NPOL * NSAMPS * NCHAN_FINE_IN;

      for (int pol=0; pol<NPOL; ++pol)
      {
        int pol_offset = coarse_chan_offset + pol * NSAMPS * NCHAN_FINE_IN;
        for (int samp=0; samp<NSAMPS; ++samp)
        {
          int samp_offset = pol_offset + samp * NCHAN_FINE_IN;
          hipComplex val = in[samp_offset + lane_idx];
          real += val.x * val.x;
          imag += val.y * val.y;
        }
      }
      int output_idx = coarse_chan_idx * NCHAN_FINE_OUT + lane_idx;

      freq_sum_buffer[output_idx] = real+imag; //scaling goes here
      __syncthreads();

      for (int start_chan=threadIdx.x; start_chan<NCHAN_FINE_OUT*NCHAN_COARSE; start_chan*=blockDim.x)
      {
        if ((start_chan+NCHAN_SUM) > NCHAN_FINE_OUT*NCHAN_COARSE)
          return;
        float sum = freq_sum_buffer[start_chan];
        for (int ii=0; ii<4; ++ii)
        {
          sum += freq_sum_buffer[start_chan + (1<<ii)];
          __syncthreads();
        }
        out[out_offset+start_chan/NCHAN_SUM];
      }
    }
  return;
}

__global__ void DetectScrunchKernel(hipComplex* __restrict__ in, float* __restrict__ out, short nchans)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  hipComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }
        out[saveoff + threadIdx.x] = sum;
    }

    return;
}

__global__ void DetectScrunchScaleKernel(hipComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  hipComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }
        
        scaled = __float2int_ru((sum - means[threadIdx.x]) * scales[threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255;
        } else if (scaled < 0) {
            scaled = 0;
        } 
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + threadIdx.x] = (unsigned char)scaled;
    }

    return;
}

__global__ void DetectScrunchScaleRevKernel(hipComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;
  
  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio
  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx; 
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  hipComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    if (threadIdx.x <  (NCHAN_FINE_OUT * NCHAN_COARSE / NCHAN_SUM)) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[chan_idx];
        }

        scaled = __float2int_ru((sum - means[566 - threadIdx.x]) * scales[566 - threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255; 
        } else if (scaled < 0) {
            scaled = 0;
        } 
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + 566 - threadIdx.x] = (unsigned char)scaled;
    }

    return;
}

__global__ void DetectScrunchScaleTruncKernel(hipComplex* __restrict__ in, float* __restrict__ out, short nchans, float *means, float *scales)
{
  /**
   * This block is going to do 2 timesamples for all coarse channels.
   * The fine channels are dealt with by the lanes, but on the fine
   * channel read we perform an fft shift and exclude the band edges.
   */
  // gridDim.x should be Nacc * 128 / (32 * nsamps_to_add) == 256

  __shared__ float freq_sum_buffer[NCHAN_FINE_OUT*NCHAN_COARSE]; // 9072 elements

  int warp_idx = threadIdx.x >> 0x5;
  int lane_idx = threadIdx.x & 0x1f;
  int pol_offset = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE;
  int coarse_chan_offet = NACCUMULATE * NCHAN_FINE_IN * NSAMPS;
  int block_offset = NCHAN_FINE_IN * NSAMPS_SUMMED * blockIdx.x;
  int nwarps_per_block = blockDim.x/warpSize;


  //Here we calculate indexes for FFT shift.
  int offset_lane_idx = (lane_idx + 19)%32;

  //Here only first 27 lanes are active as we drop
  //5 channels due to the 32/27 oversampling ratio

  if (lane_idx < 27)
    {
      // This warp
      // first sample in inner dimension = (32 * 2 * blockIdx.x)
      // This warp will loop over coarse channels in steps of NWARPS per block coarse_chan_idx (0,335)
      for (int coarse_chan_idx = warp_idx; coarse_chan_idx < NCHAN_COARSE; coarse_chan_idx += nwarps_per_block)
        {
          float real = 0.0f;
          float imag = 0.0f;
          int base_offset = coarse_chan_offet * coarse_chan_idx + block_offset + offset_lane_idx;

          for (int pol_idx=0; pol_idx<NPOL; ++pol_idx)
            {
              int offset = base_offset + pol_offset * pol_idx;
              for (int sample_idx=0; sample_idx<NSAMPS_SUMMED; ++sample_idx)
                {
                  //Get first channel
                  // IDX = NCHAN_COARSE * NSAMPS * NCHAN_FINE_IN * NACCUMULATE * pol_idx
                  // + NACCUMULATE * NCHAN_FINE_IN * NSAMPS * coarse_chan_idx
                  // + blockIdx.x * NCHAN_FINE_IN * NSAMPS_SUMMED
                  // + NCHAN_FINE_IN * sample_idx
                  // + lane_idx;
                  hipComplex val = in[offset + (NCHAN_FINE_IN * sample_idx)]; // load frequencies in right order
                  real += val.x * val.x;
                  imag += val.y * val.y;
                }
              // 3 is the leading dead lane count
              // sketchy
              freq_sum_buffer[coarse_chan_idx*NCHAN_FINE_OUT + lane_idx] = real + imag;
            }
        }
    }

    __syncthreads();

    int saveoff = blockIdx.x * nchans;

    int skipbottom = 28 * NCHAN_SUM;
    if (threadIdx.x < 512) {
        float sum = 0.0;
        int scaled = 0;
        for (int chan_idx = threadIdx.x * NCHAN_SUM; chan_idx < (threadIdx.x+1) * NCHAN_SUM; ++chan_idx) {
            sum += freq_sum_buffer[skipbottom + chan_idx];
        }

        scaled = __float2int_ru((sum - means[511 - threadIdx.x]) * scales[511 - threadIdx.x] + 64.5f);
        if (scaled > 255) {
            scaled = 255;
        } else if (scaled < 0) {
            scaled = 0;
        }
        //out[saveoff + threadIdx.x] = (unsigned char)scaled;
        // NOTE: That puts the highest frequency first (OUTCHANS - 1 - threadIdx.x)
        out[saveoff + 511 - threadIdx.x] = (unsigned char)scaled;
    }

    return;
}


__global__ void GetPowerAddTimeKernel(hipfftComplex* __restrict__ in, float* __restrict__ out, unsigned int jump, unsigned int factort, unsigned int acc) {

    int idx1, idx2;
    int outidx;
    int skip1, skip2;
    float power1, power2;

    for (int iac = 0; iac < acc; iac++) {
        skip1 = iac * 336 * 128 * 2;
        skip2 = iac * 336 * 27;
            for (int ichan = 0; ichan < 7; ichan++) {
            outidx = skip2 + 7 * 27 * blockIdx.x + ichan * 27 + threadIdx.x;
            out[outidx] = (float)0.0;
            out[outidx + jump] = (float)0.0;
            out[outidx + 2 * jump] = (float)0.0;
            out[outidx + 3 * jump] = (float)0.0;

            idx1 = skip1 + 256 * (blockIdx.x * 7 + ichan);

            for (int itime = 0; itime < factort; itime++) {
                idx2 = threadIdx.x + itime * 32;
                power1 = (in[idx1 + idx2].x * in[idx1 + idx2].x + in[idx1 + idx2].y * in[idx1 + idx2].y);
                power2 = (in[idx1 + 128 + idx2].x * in[idx1 + 128 + idx2].x + in[idx1 + 128 + idx2].y * in[idx1 + 128 + idx2].y);
                out[outidx] += (power1 + power2);
                out[outidx + jump] += (power1 - power2);
                out[outidx + 2 * jump] += (2 * (in[idx1 + idx2].x * in[idx1 + 128 + idx2].x + in[idx1 + idx2].y * in[idx1 + 128 + idx2].y));
                out[outidx + 3 * jump] += (2 * (in[idx1 + idx2].x * in[idx1 + 128 + idx2].y - in[idx1 + idx2].y * in[idx1 + 128 + idx2].x));
            }
        }
    }
}

__global__ void GetScaleFactorsKernel(float *indata, float *base, float *stdev, float *factors, int nchans, int processed) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff * factors[isamp + 1];
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));

}

__global__ void GetScaleFactorsDivKernel(float *indata, float *base, float *stdev, int nchans, int processed) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff / (isamp + 1);
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));

}

__global__ void GetScaleFactorsDoubleKernel(float *indata, float *base, float *stdev, int nchans) {
/*
    // NOTE: Filterbank file format coming in
    //float mean = indata[threadIdx.x];
    float mean = 0.0f;
    // NOTE: Depending whether I save STD or VAR at the end of every run
    // float estd = stdev[threadIdx.x];
    float estd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float oldmean = base[threadIdx.x];
    //float estd = 0.0f;
    //float oldmean = 0.0;
    float val = 0.0f;
    float diff = 0.0;
    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - oldmean;
        mean = oldmean + diff * factors[processed + isamp + 1];
        estd += diff * (val - mean);
        oldmean = mean;
    }
    base[threadIdx.x] = mean;
    stdev[threadIdx.x] = sqrtf(estd / (float)(processed + 2 * NACCUMULATE - 1.0f));
    // stdev[threadIdx.x] = estd;
*/
/*
    float chmean = 0.0f;
    float chestd = 0.0f;
    float val = 0.0;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        val = indata[isamp * nchans + threadIdx.x];
        diff = val - chmean;
        chmean += diff / (isamp + 1);
        chestd += diff * (val - chmean);
    }

    float oldmean = base[threadIdx.x];
    float oldestd = stdev[threadIdx.x] * stdev[threadIdx.x] * (processed - 1.0f);
    float newestd = 0.0f;

    diff = chmean - oldmean;
    base[threadIdx.x] = oldmean + diff * (float)(2.0f * NACCUMULATE) / (float)(processed + 2.0 * NACCUMULATE);
    newestd = oldestd + chestd + diff * diff * (float)(2.0f * NACCUMULATE) * (float)processed / (float)(processed + 2.0 * NACCUMULATE);
    stdev[threadIdx.x] = sqrt(newestd / (float)(processed + 2 * NACCUMULATE - 1.0f));
*/
    float sum = indata[threadIdx.x];

    for (int isamp = 1; isamp < 2 * NACCUMULATE; ++isamp) {
        sum += indata[isamp * nchans + threadIdx.x];
    }

    float mean = sum / (float)(2.0 * NACCUMULATE);

    base[threadIdx.x] = mean;

    float sumsq = 0.0f;
    float diff = 0.0;

    for (int isamp = 0; isamp < 2 * NACCUMULATE; ++isamp) {
        diff = indata[isamp * nchans + threadIdx.x] - mean;
        sumsq += diff * diff;   
    }

    stdev[threadIdx.x] = sqrt(sumsq / (float)(NACCUMULATE - 1.0));
}


struct FactorFunctor {
    __host__ __device__ float operator()(float val) {
        return val != 0.0f ? 1.0f/val : val;
    }
};

int main(int argc, char* argv[]) {

    unsigned char *rawbuffer = new unsigned char[7168 * NFPGAS * NACC];

    thrust::device_vector<unsigned char> rawdata(7168 * NFPGAS * NACCUMULATE);
    // NOTE: 336 coarse channels * 32 fine channels * 4 time samples * 2 polarisations
    thrust::device_vector<hipComplex> input(336*32*4*2*NACCUMULATE);
    // NOTE: 336 coarse channels * 27 fine channels
    thrust::device_vector<float> output(336*27*NACCUMULATE);

    thrust::device_vector<float> means(567);
    thrust::device_vector<float> scales(567);

    thrust::device_vector<float> factors(NACCUMULATE * 2);
    thrust::sequence(factors.begin(), factors.end());
    thrust::transform(factors.begin(), factors.end(), factors.begin(), FactorFunctor());

    // NOTE: Benchmarking the unpacker kernel

    hipArray *rawarray;
    hipChannelFormatDesc cdesc;
    cdesc = hipCreateChannelDesc<int2>();
    hipMallocArray(&rawarray, &cdesc, 7, 48 * 128 * NACCUMULATE);

    hipResourceDesc rdesc;
    memset(&rdesc, 0, sizeof(hipResourceDesc));
    rdesc.resType = hipResourceTypeArray;
    rdesc.res.array.array = rawarray;

    hipTextureDesc tdesc;
    memset(&tdesc, 0, sizeof(hipTextureDesc));
    tdesc.addressMode[0] = hipAddressModeClamp;
    tdesc.filterMode = hipFilterModePoint;
    tdesc.readMode = hipReadModeElementType;

    hipTextureObject_t texObj = 0;
    hipCreateTextureObject(&texObj, &rdesc, &tdesc, NULL);

    hipMemcpyToArray(rawarray, 0, 0, rawbuffer, 7168 * 48 * NACCUMULATE * sizeof(unsigned char), hipMemcpyHostToDevice);

    dim3 rearrange_b(1,48,1);
    dim3 rearrange_t(7,1,1);

    dim3 unpackt(2, 128, 1);
    dim3 unpacka(1, 1024, 1);
    dim3 unpackb(48, 2, 1);

    // ##################################
    // ### UNPACK KERNEL BENCHMARKING ###
    // ##################################
 
    std::chrono::time_point<std::chrono::system_clock> unpackstart, unpackend;
    std::chrono::duration<double> unpackelapsed;

    unpackstart = std::chrono::system_clock::now();
    // NOTE: Unpacking with texture memory
    for (int ii = 0; ii < 32; ++ii) {
        unpack_original_tex<<<rearrange_b, rearrange_t, 0>>>(texObj, thrust::raw_pointer_cast(input.data()), NACCUMULATE);
        gpuErrchk(hipDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with texture memory: " << unpackelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Unpacking with shared memory
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_new<<<48, 128, 0>>>(reinterpret_cast<unsigned int*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));       
        gpuErrchk(hipDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory: " << unpackelapsed.count() / 32.0 << "s" << endl; 

    // NOTE: Unpacking with shared memory with cast to int2 in the function call
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_new_int2<<<48, 128, 0>>>(reinterpret_cast<int2*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));
        gpuErrchk(hipDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory with cast to int2 in the function call: " << unpackelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Unpacking with shared memory with the alternative incoming buffer arrangement
    unpackstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        unpack_alt<<<48, unpacka, 0>>>(reinterpret_cast<unsigned int*>(thrust::raw_pointer_cast(rawdata.data())), thrust::raw_pointer_cast(input.data()));
        gpuErrchk(hipDeviceSynchronize());
    }
    unpackend = std::chrono::system_clock::now();
    unpackelapsed = unpackend - unpackstart;
    cout << "Unpacking with shared memory with the alternative incoming buffer arrangement: " << unpackelapsed.count() / 32.0 << "s" << endl;

    std::chrono::time_point<std::chrono::system_clock> powerstart, powerend;
    std::chrono::duration<double> powerelapsed;

    // #################################
    // ### POWER KERNEL BENCHMARKING ###
    // #################################

    // NOTE: Unoptimised power kernel with time averaging only
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetPowerAddTimeKernel<<<48, 27, 0>>>(thrust::raw_pointer_cast(input.data()), thrust::raw_pointer_cast(output.data()), 0, NSAMPS, NACCUMULATE);
        gpuErrchk(hipDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Unoptimised power kernel: " << powerelapsed.count() / 32.0 << "s" << endl;
    
    // NOTE: Optimised power kernel with shared memory with time and frequency averaging
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567);
        gpuErrchk(hipDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(hipDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling and reversed frequency
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleRevKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 567,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(hipDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling and reversed frequency: " << powerelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised power kernel with scaling truncated and reversed frequency
    powerstart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        DetectScrunchScaleTruncKernel<<<NACCUMULATE,1024,0>>>(thrust::raw_pointer_cast(input.data()),thrust::raw_pointer_cast(output.data()), 512,
                                                            thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()));
        gpuErrchk(hipDeviceSynchronize());
    }
    powerend = std::chrono::system_clock::now();
    powerelapsed = powerend - powerstart;

    cout << "Optimised power kernel with scaling, truncated and reversed frequency: " << powerelapsed.count() / 32.0 << "s" << endl;


    // #################################
    // ### SCALE KERNEL BENCHMARKING ###
    // #################################

    std::chrono::time_point<std::chrono::system_clock> scalestart, scaleend;
    std::chrono::duration<double> scaleelapsed;

    
    // NOTE: Double-pass scaling factors kernel
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsDoubleKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()), 512);
        gpuErrchk(hipDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Double pass scaling factors kernel with division: " << scaleelapsed.count() / 32.0 << "s" << endl;


    // NOTE: Unoptimised scaling factors kernel with division
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsDivKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()),
                                                                    512, 0);
        gpuErrchk(hipDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Unoptimised scaling factors kernel with division: " << scaleelapsed.count() / 32.0 << "s" << endl;

    // NOTE: Optimised scaling factors kernel 
    scalestart = std::chrono::system_clock::now();
    for (int ii = 0; ii < 32; ++ii) {
        GetScaleFactorsKernel<<<1, 512, 0>>>(thrust::raw_pointer_cast(output.data()), thrust::raw_pointer_cast(means.data()), thrust::raw_pointer_cast(scales.data()),
                                                                    thrust::raw_pointer_cast(factors.data()), 512, 0);
        gpuErrchk(hipDeviceSynchronize());
    }
    scaleend = std::chrono::system_clock::now();
    scaleelapsed = scaleend - scalestart;

    cout << "Optimised scaling factors kernel: " << scaleelapsed.count() / 32.0 << "s" << endl;



}


	.text
	.file	"benchmarks.hip"
                                        # Start of file scope inline assembly
	.globl	_ZSt21ios_base_library_initv

                                        # End of file scope inline assembly
	.globl	_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj # -- Begin function _Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.type	_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj,@function
_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj: # @_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	40(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	32(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	12(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	64(%rsp), %r14
	leaq	48(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end0:
	.size	_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj, .Lfunc_end0-_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.cfi_endproc
                                        # -- End function
	.globl	_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE # -- Begin function _Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
	.type	_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE,@function
_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE: # @_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$80, %rsp
	.cfi_def_cfa_offset 128
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	24(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	16(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	64(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$96, %rsp
	.cfi_adjust_cfa_offset -96
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end1:
	.size	_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE, .Lfunc_end1-_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
	.cfi_endproc
                                        # -- End function
	.globl	_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE # -- Begin function _Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.type	_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE,@function
_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE: # @_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$80, %rsp
	.cfi_def_cfa_offset 128
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	24(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	16(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	64(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$96, %rsp
	.cfi_adjust_cfa_offset -96
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end2:
	.size	_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE, .Lfunc_end2-_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.cfi_endproc
                                        # -- End function
	.globl	_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE # -- Begin function _Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
	.type	_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE,@function
_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE: # @_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$80, %rsp
	.cfi_def_cfa_offset 128
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	24(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	16(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	64(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$96, %rsp
	.cfi_adjust_cfa_offset -96
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end3:
	.size	_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE, .Lfunc_end3-_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
	.cfi_endproc
                                        # -- End function
	.globl	_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf # -- Begin function _Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.type	_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf,@function
_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf: # @_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$80, %rsp
	.cfi_def_cfa_offset 128
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	24(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	16(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	64(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$96, %rsp
	.cfi_adjust_cfa_offset -96
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end4:
	.size	_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf, .Lfunc_end4-_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.cfi_endproc
                                        # -- End function
	.globl	_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs # -- Begin function _Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.type	_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs,@function
_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs: # @_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	40(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	32(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	14(%rsp), %rsi
	movw	%dx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	64(%rsp), %r14
	leaq	48(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end5:
	.size	_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs, .Lfunc_end5-_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.cfi_endproc
                                        # -- End function
	.globl	_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ # -- Begin function _Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.type	_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: # @_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$144, %rsp
	.cfi_def_cfa_offset 192
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	56(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	14(%rsp), %rsi
	movw	%dx, (%rsi)
	leaq	40(%rsp), %rdx
	movq	%rcx, (%rdx)
	leaq	32(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	96(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	leaq	80(%rsp), %r14
	leaq	64(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$160, %rsp
	.cfi_adjust_cfa_offset -160
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end6:
	.size	_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end6-_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_endproc
                                        # -- End function
	.globl	_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ # -- Begin function _Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.type	_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: # @_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$144, %rsp
	.cfi_def_cfa_offset 192
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	56(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	14(%rsp), %rsi
	movw	%dx, (%rsi)
	leaq	40(%rsp), %rdx
	movq	%rcx, (%rdx)
	leaq	32(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	96(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	leaq	80(%rsp), %r14
	leaq	64(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$160, %rsp
	.cfi_adjust_cfa_offset -160
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end7:
	.size	_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end7-_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_endproc
                                        # -- End function
	.globl	_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ # -- Begin function _Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.type	_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: # @_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$144, %rsp
	.cfi_def_cfa_offset 192
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	56(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	14(%rsp), %rsi
	movw	%dx, (%rsi)
	leaq	40(%rsp), %rdx
	movq	%rcx, (%rdx)
	leaq	32(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	96(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	leaq	80(%rsp), %r14
	leaq	64(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$160, %rsp
	.cfi_adjust_cfa_offset -160
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end8:
	.size	_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end8-_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.cfi_endproc
                                        # -- End function
	.globl	_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj # -- Begin function _Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.type	_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj,@function
_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj: # @_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$128, %rsp
	.cfi_def_cfa_offset 176
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	40(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	32(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	12(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	8(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	4(%rsp), %rcx
	movl	%r8d, (%rcx)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	leaq	64(%rsp), %r14
	leaq	48(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$144, %rsp
	.cfi_adjust_cfa_offset -144
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end9:
	.size	_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj, .Lfunc_end9-_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.cfi_endproc
                                        # -- End function
	.globl	_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii # -- Begin function _Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
	.type	_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii,@function
_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii: # @_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$144, %rsp
	.cfi_def_cfa_offset 192
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	56(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	40(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	32(%rsp), %rdx
	movq	%rcx, (%rdx)
	leaq	12(%rsp), %rcx
	movl	%r8d, (%rcx)
	leaq	8(%rsp), %r8
	movl	%r9d, (%r8)
	leaq	96(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	movq	%r8, 40(%rbx)
	leaq	80(%rsp), %r14
	leaq	64(%rsp), %r15
	leaq	24(%rsp), %r12
	leaq	16(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z21GetScaleFactorsKernelPfS_S_S_ii, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$160, %rsp
	.cfi_adjust_cfa_offset -160
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end10:
	.size	_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii, .Lfunc_end10-_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
	.cfi_endproc
                                        # -- End function
	.globl	_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii # -- Begin function _Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
	.type	_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii,@function
_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii: # @_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$128, %rsp
	.cfi_def_cfa_offset 176
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	40(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	32(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	24(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	4(%rsp), %rdx
	movl	%ecx, (%rdx)
	movq	%rsp, %rcx
	movl	%r8d, (%rcx)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	movq	%rcx, 32(%rbx)
	leaq	64(%rsp), %r14
	leaq	48(%rsp), %r15
	leaq	16(%rsp), %r12
	leaq	8(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z24GetScaleFactorsDivKernelPfS_S_ii, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$144, %rsp
	.cfi_adjust_cfa_offset -144
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end11:
	.size	_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii, .Lfunc_end11-_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
	.cfi_endproc
                                        # -- End function
	.globl	_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i # -- Begin function _Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
	.type	_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i,@function
_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i: # @_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	40(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	32(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	24(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	4(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdx, 24(%rbx)
	leaq	64(%rsp), %r14
	leaq	48(%rsp), %r15
	leaq	16(%rsp), %r12
	leaq	8(%rsp), %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_Z27GetScaleFactorsDoubleKernelPfS_S_i, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end12:
	.size	_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i, .Lfunc_end12-_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
	.cfi_endproc
                                        # -- End function
	.section	.rodata.cst16,"aM",@progbits,16
	.p2align	4, 0x0                          # -- Begin function main
.LCPI13_0:
	.long	0x00000000                      # float 0
	.long	0x3f800000                      # float 1
	.zero	4
	.zero	4
	.section	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0
.LCPI13_1:
	.quad	0x41cdcd6500000000              # double 1.0E+9
.LCPI13_2:
	.quad	0x3fa0000000000000              # double 0.03125
	.text
	.globl	main
	.type	main,@function
main:                                   # @main
.Lfunc_begin0:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception0
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$400, %rsp                      # imm = 0x190
	.cfi_def_cfa_offset 448
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movl	$88080384, %edi                 # imm = 0x5400000
	callq	_Znam
	movq	%rax, %rbx
	leaq	200(%rsp), %rdi
	movl	$44040192, %esi                 # imm = 0x2A00000
	callq	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em
.Ltmp0:
	leaq	32(%rsp), %rdi
	movl	$11010048, %esi                 # imm = 0xA80000
	callq	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em
.Ltmp1:
# %bb.1:                                # %_ZN6thrust13device_vectorI15HIP_vector_typeIfLj2EENS_16device_allocatorIS2_EEEC2Em.exit
.Ltmp3:
	leaq	64(%rsp), %rdi
	movl	$1161216, %esi                  # imm = 0x11B800
	callq	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
.Ltmp4:
# %bb.2:                                # %_ZN6thrust13device_vectorIfNS_16device_allocatorIfEEEC2Em.exit
.Ltmp6:
	leaq	128(%rsp), %rdi
	movl	$567, %esi                      # imm = 0x237
	callq	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
.Ltmp7:
# %bb.3:                                # %_ZN6thrust13device_vectorIfNS_16device_allocatorIfEEEC2Em.exit189
.Ltmp9:
	leaq	96(%rsp), %rdi
	movl	$567, %esi                      # imm = 0x237
	callq	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
.Ltmp10:
# %bb.4:                                # %_ZN6thrust13device_vectorIfNS_16device_allocatorIfEEEC2Em.exit190
.Ltmp12:
	leaq	168(%rsp), %rdi
	movl	$256, %esi                      # imm = 0x100
	callq	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
.Ltmp13:
# %bb.5:
	movq	192(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_9
# %bb.6:
.Ltmp15:
	movq	176(%rsp), %rsi
	movapd	.LCPI13_0(%rip), %xmm0          # xmm0 = <0.0E+0,1.0E+0,u,u>
	leaq	240(%rsp), %rdi
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l
.Ltmp16:
# %bb.7:
	movq	192(%rsp), %rsi
	testq	%rsi, %rsi
	je	.LBB13_9
# %bb.8:                                # %_ZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_.exit.i.i.i.i.i.i
	movq	176(%rsp), %rax
	movq	%rax, 240(%rsp)
	movq	%rax, 248(%rsp)
.Ltmp17:
	movq	256(%rsp), %rax
	movq	%rax, 16(%rsp)
	movupd	240(%rsp), %xmm0
	movupd	%xmm0, (%rsp)
	leaq	336(%rsp), %rdi
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l
.Ltmp18:
.LBB13_9:
.Ltmp20:
	leaq	240(%rsp), %rdi
	movl	$32, %esi
	movl	$32, %edx
	xorl	%ecx, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	hipCreateChannelDesc
.Ltmp21:
# %bb.10:                               # %_ZL20hipCreateChannelDescI15HIP_vector_typeIiLj2EEE20hipChannelFormatDescv.exit
	movl	256(%rsp), %eax
	leaq	304(%rsp), %rsi
	movl	%eax, 16(%rsi)
	movupd	240(%rsp), %xmm0
	movapd	%xmm0, (%rsi)
.Ltmp23:
	leaq	160(%rsp), %rdi
	movl	$7, %edx
	movl	$786432, %ecx                   # imm = 0xC0000
	xorl	%r8d, %r8d
	callq	hipMallocArray
.Ltmp24:
# %bb.11:
	xorpd	%xmm0, %xmm0
	leaq	240(%rsp), %rsi
	movapd	%xmm0, (%rsi)
	movapd	%xmm0, 48(%rsi)
	movapd	%xmm0, 32(%rsi)
	movapd	%xmm0, 16(%rsi)
	movq	160(%rsp), %rax
	movq	%rax, 8(%rsi)
	leaq	336(%rsp), %rdx
	movupd	%xmm0, 4(%rdx)
	movupd	%xmm0, 48(%rdx)
	movupd	%xmm0, 36(%rdx)
	movupd	%xmm0, 20(%rdx)
	movl	$1, (%rdx)
	movl	$0, 16(%rdx)
	leaq	232(%rsp), %rdi
	movq	$0, (%rdi)
.Ltmp26:
	xorl	%ecx, %ecx
	callq	hipCreateTextureObject
.Ltmp27:
# %bb.12:
	movq	160(%rsp), %rdi
.Ltmp28:
	movl	$44040192, %r8d                 # imm = 0x2A00000
	xorl	%esi, %esi
	xorl	%edx, %edx
	movq	%rbx, %rcx
	movl	$1, %r9d
	callq	hipMemcpyToArray
.Ltmp29:
# %bb.13:
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$206158430209, %r14             # imm = 0x3000000001
	movabsq	$4294967303, %r15               # imm = 0x100000007
.LBB13_14:                              # =>This Inner Loop Header: Depth=1
.Ltmp31:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp32:
# %bb.15:                               #   in Loop: Header=BB13_14 Depth=1
	testl	%eax, %eax
	jne	.LBB13_17
# %bb.16:                               #   in Loop: Header=BB13_14 Depth=1
	movq	232(%rsp), %rdi
	movq	40(%rsp), %rsi
.Ltmp33:
	movl	$128, %edx
	callq	_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
.Ltmp34:
.LBB13_17:                              #   in Loop: Header=BB13_14 Depth=1
.Ltmp35:
	callq	hipDeviceSynchronize
.Ltmp36:
# %bb.18:                               # %_Z9gpuAssert10hipError_tPKcib.exit
                                        #   in Loop: Header=BB13_14 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_182
# %bb.19:                               #   in Loop: Header=BB13_14 Depth=1
	decl	%r12d
	jne	.LBB13_14
# %bb.20:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp41:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.1, %esi
	movl	$31, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp42:
# %bb.21:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp43:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp44:
# %bb.22:                               # %_ZNSolsEd.exit
.Ltmp45:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp46:
# %bb.23:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit202
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp47:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp48:
# %bb.24:                               # %.noexc388
.Ltmp49:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp50:
# %bb.25:                               # %.noexc389
.Ltmp51:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp52:
# %bb.26:                               # %_ZNSolsEPFRSoS_E.exit
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967344, %r14               # imm = 0x100000030
	movabsq	$4294967424, %r15               # imm = 0x100000080
.LBB13_27:                              # =>This Inner Loop Header: Depth=1
.Ltmp53:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp54:
# %bb.28:                               #   in Loop: Header=BB13_27 Depth=1
	testl	%eax, %eax
	jne	.LBB13_30
# %bb.29:                               #   in Loop: Header=BB13_27 Depth=1
	movq	208(%rsp), %rdi
	movq	40(%rsp), %rsi
.Ltmp55:
	callq	_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
.Ltmp56:
.LBB13_30:                              #   in Loop: Header=BB13_27 Depth=1
.Ltmp57:
	callq	hipDeviceSynchronize
.Ltmp58:
# %bb.31:                               # %_Z9gpuAssert10hipError_tPKcib.exit210
                                        #   in Loop: Header=BB13_27 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_184
# %bb.32:                               #   in Loop: Header=BB13_27 Depth=1
	decl	%r12d
	jne	.LBB13_27
# %bb.33:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp63:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.3, %esi
	movl	$30, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp64:
# %bb.34:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit212
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp65:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp66:
# %bb.35:                               # %_ZNSolsEd.exit214
.Ltmp67:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp68:
# %bb.36:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit216
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp69:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp70:
# %bb.37:                               # %.noexc391
.Ltmp71:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp72:
# %bb.38:                               # %.noexc392
.Ltmp73:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp74:
# %bb.39:                               # %_ZNSolsEPFRSoS_E.exit218
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967344, %r14               # imm = 0x100000030
	movabsq	$4294967424, %r15               # imm = 0x100000080
.LBB13_40:                              # =>This Inner Loop Header: Depth=1
.Ltmp75:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp76:
# %bb.41:                               #   in Loop: Header=BB13_40 Depth=1
	testl	%eax, %eax
	jne	.LBB13_43
# %bb.42:                               #   in Loop: Header=BB13_40 Depth=1
	movq	208(%rsp), %rdi
	movq	40(%rsp), %rsi
.Ltmp77:
	callq	_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
.Ltmp78:
.LBB13_43:                              #   in Loop: Header=BB13_40 Depth=1
.Ltmp79:
	callq	hipDeviceSynchronize
.Ltmp80:
# %bb.44:                               # %_Z9gpuAssert10hipError_tPKcib.exit225
                                        #   in Loop: Header=BB13_40 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_186
# %bb.45:                               #   in Loop: Header=BB13_40 Depth=1
	decl	%r12d
	jne	.LBB13_40
# %bb.46:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp85:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.4, %esi
	movl	$69, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp86:
# %bb.47:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit227
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp87:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp88:
# %bb.48:                               # %_ZNSolsEd.exit229
.Ltmp89:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp90:
# %bb.49:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit231
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp91:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp92:
# %bb.50:                               # %.noexc395
.Ltmp93:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp94:
# %bb.51:                               # %.noexc396
.Ltmp95:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp96:
# %bb.52:                               # %_ZNSolsEPFRSoS_E.exit233
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967344, %r14               # imm = 0x100000030
	movabsq	$4398046511105, %r15            # imm = 0x40000000001
.LBB13_53:                              # =>This Inner Loop Header: Depth=1
.Ltmp97:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp98:
# %bb.54:                               #   in Loop: Header=BB13_53 Depth=1
	testl	%eax, %eax
	jne	.LBB13_56
# %bb.55:                               #   in Loop: Header=BB13_53 Depth=1
	movq	208(%rsp), %rdi
	movq	40(%rsp), %rsi
.Ltmp99:
	callq	_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
.Ltmp100:
.LBB13_56:                              #   in Loop: Header=BB13_53 Depth=1
.Ltmp101:
	callq	hipDeviceSynchronize
.Ltmp102:
# %bb.57:                               # %_Z9gpuAssert10hipError_tPKcib.exit240
                                        #   in Loop: Header=BB13_53 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_188
# %bb.58:                               #   in Loop: Header=BB13_53 Depth=1
	decl	%r12d
	jne	.LBB13_53
# %bb.59:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp107:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.5, %esi
	movl	$79, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp108:
# %bb.60:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit242
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp109:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp110:
# %bb.61:                               # %_ZNSolsEd.exit244
.Ltmp111:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp112:
# %bb.62:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit246
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp113:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp114:
# %bb.63:                               # %.noexc399
.Ltmp115:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp116:
# %bb.64:                               # %.noexc400
.Ltmp117:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp118:
# %bb.65:                               # %_ZNSolsEPFRSoS_E.exit248
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967344, %r14               # imm = 0x100000030
	movabsq	$4294967323, %r15               # imm = 0x10000001B
.LBB13_66:                              # =>This Inner Loop Header: Depth=1
.Ltmp120:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp121:
# %bb.67:                               #   in Loop: Header=BB13_66 Depth=1
	testl	%eax, %eax
	jne	.LBB13_69
# %bb.68:                               #   in Loop: Header=BB13_66 Depth=1
	movq	40(%rsp), %rdi
	movq	72(%rsp), %rsi
.Ltmp122:
	xorl	%edx, %edx
	movl	$4, %ecx
	movl	$128, %r8d
	callq	_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
.Ltmp123:
.LBB13_69:                              #   in Loop: Header=BB13_66 Depth=1
.Ltmp124:
	callq	hipDeviceSynchronize
.Ltmp125:
# %bb.70:                               # %_Z9gpuAssert10hipError_tPKcib.exit255
                                        #   in Loop: Header=BB13_66 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_190
# %bb.71:                               #   in Loop: Header=BB13_66 Depth=1
	decl	%r12d
	jne	.LBB13_66
# %bb.72:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp130:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.6, %esi
	movl	$26, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp131:
# %bb.73:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit257
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp132:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp133:
# %bb.74:                               # %_ZNSolsEd.exit259
.Ltmp134:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp135:
# %bb.75:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit261
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp136:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp137:
# %bb.76:                               # %.noexc403
.Ltmp138:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp139:
# %bb.77:                               # %.noexc404
.Ltmp140:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp141:
# %bb.78:                               # %_ZNSolsEPFRSoS_E.exit263
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967424, %r14               # imm = 0x100000080
	movabsq	$4294968320, %r15               # imm = 0x100000400
.LBB13_79:                              # =>This Inner Loop Header: Depth=1
.Ltmp142:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp143:
# %bb.80:                               #   in Loop: Header=BB13_79 Depth=1
	testl	%eax, %eax
	jne	.LBB13_82
# %bb.81:                               #   in Loop: Header=BB13_79 Depth=1
	movq	40(%rsp), %rdi
	movq	72(%rsp), %rsi
.Ltmp144:
	movl	$567, %edx                      # imm = 0x237
	callq	_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
.Ltmp145:
.LBB13_82:                              #   in Loop: Header=BB13_79 Depth=1
.Ltmp146:
	callq	hipDeviceSynchronize
.Ltmp147:
# %bb.83:                               # %_Z9gpuAssert10hipError_tPKcib.exit270
                                        #   in Loop: Header=BB13_79 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_192
# %bb.84:                               #   in Loop: Header=BB13_79 Depth=1
	decl	%r12d
	jne	.LBB13_79
# %bb.85:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp152:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.7, %esi
	movl	$24, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp153:
# %bb.86:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit272
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp154:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp155:
# %bb.87:                               # %_ZNSolsEd.exit274
.Ltmp156:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp157:
# %bb.88:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit276
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp158:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp159:
# %bb.89:                               # %.noexc407
.Ltmp160:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp161:
# %bb.90:                               # %.noexc408
.Ltmp162:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp163:
# %bb.91:                               # %_ZNSolsEPFRSoS_E.exit278
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967424, %r14               # imm = 0x100000080
	movabsq	$4294968320, %r15               # imm = 0x100000400
.LBB13_92:                              # =>This Inner Loop Header: Depth=1
.Ltmp164:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp165:
# %bb.93:                               #   in Loop: Header=BB13_92 Depth=1
	testl	%eax, %eax
	jne	.LBB13_95
# %bb.94:                               #   in Loop: Header=BB13_92 Depth=1
	movq	40(%rsp), %rdi
	movq	72(%rsp), %rsi
	movq	136(%rsp), %rcx
	movq	104(%rsp), %r8
.Ltmp166:
	movl	$567, %edx                      # imm = 0x237
	callq	_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
.Ltmp167:
.LBB13_95:                              #   in Loop: Header=BB13_92 Depth=1
.Ltmp168:
	callq	hipDeviceSynchronize
.Ltmp169:
# %bb.96:                               # %_Z9gpuAssert10hipError_tPKcib.exit287
                                        #   in Loop: Header=BB13_92 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_194
# %bb.97:                               #   in Loop: Header=BB13_92 Depth=1
	decl	%r12d
	jne	.LBB13_92
# %bb.98:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp174:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.8, %esi
	movl	$37, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp175:
# %bb.99:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit289
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp176:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp177:
# %bb.100:                              # %_ZNSolsEd.exit291
.Ltmp178:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp179:
# %bb.101:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit293
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp180:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp181:
# %bb.102:                              # %.noexc411
.Ltmp182:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp183:
# %bb.103:                              # %.noexc412
.Ltmp184:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp185:
# %bb.104:                              # %_ZNSolsEPFRSoS_E.exit295
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967424, %r14               # imm = 0x100000080
	movabsq	$4294968320, %r15               # imm = 0x100000400
.LBB13_105:                             # =>This Inner Loop Header: Depth=1
.Ltmp186:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp187:
# %bb.106:                              #   in Loop: Header=BB13_105 Depth=1
	testl	%eax, %eax
	jne	.LBB13_108
# %bb.107:                              #   in Loop: Header=BB13_105 Depth=1
	movq	40(%rsp), %rdi
	movq	72(%rsp), %rsi
	movq	136(%rsp), %rcx
	movq	104(%rsp), %r8
.Ltmp188:
	movl	$567, %edx                      # imm = 0x237
	callq	_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
.Ltmp189:
.LBB13_108:                             #   in Loop: Header=BB13_105 Depth=1
.Ltmp190:
	callq	hipDeviceSynchronize
.Ltmp191:
# %bb.109:                              # %_Z9gpuAssert10hipError_tPKcib.exit304
                                        #   in Loop: Header=BB13_105 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_196
# %bb.110:                              #   in Loop: Header=BB13_105 Depth=1
	decl	%r12d
	jne	.LBB13_105
# %bb.111:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp196:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.9, %esi
	movl	$60, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp197:
# %bb.112:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit306
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp198:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp199:
# %bb.113:                              # %_ZNSolsEd.exit308
.Ltmp200:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp201:
# %bb.114:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit310
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp202:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp203:
# %bb.115:                              # %.noexc415
.Ltmp204:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp205:
# %bb.116:                              # %.noexc416
.Ltmp206:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp207:
# %bb.117:                              # %_ZNSolsEPFRSoS_E.exit312
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967424, %r14               # imm = 0x100000080
	movabsq	$4294968320, %r15               # imm = 0x100000400
.LBB13_118:                             # =>This Inner Loop Header: Depth=1
.Ltmp208:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp209:
# %bb.119:                              #   in Loop: Header=BB13_118 Depth=1
	testl	%eax, %eax
	jne	.LBB13_121
# %bb.120:                              #   in Loop: Header=BB13_118 Depth=1
	movq	40(%rsp), %rdi
	movq	72(%rsp), %rsi
	movq	136(%rsp), %rcx
	movq	104(%rsp), %r8
.Ltmp210:
	movl	$512, %edx                      # imm = 0x200
	callq	_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
.Ltmp211:
.LBB13_121:                             #   in Loop: Header=BB13_118 Depth=1
.Ltmp212:
	callq	hipDeviceSynchronize
.Ltmp213:
# %bb.122:                              # %_Z9gpuAssert10hipError_tPKcib.exit321
                                        #   in Loop: Header=BB13_118 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_198
# %bb.123:                              #   in Loop: Header=BB13_118 Depth=1
	decl	%r12d
	jne	.LBB13_118
# %bb.124:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp218:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.10, %esi
	movl	$71, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp219:
# %bb.125:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit323
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp220:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp221:
# %bb.126:                              # %_ZNSolsEd.exit325
.Ltmp222:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp223:
# %bb.127:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit327
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp224:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp225:
# %bb.128:                              # %.noexc419
.Ltmp226:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp227:
# %bb.129:                              # %.noexc420
.Ltmp228:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp229:
# %bb.130:                              # %_ZNSolsEPFRSoS_E.exit329
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967297, %r14               # imm = 0x100000001
	movabsq	$4294967808, %r15               # imm = 0x100000200
.LBB13_131:                             # =>This Inner Loop Header: Depth=1
.Ltmp231:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp232:
# %bb.132:                              #   in Loop: Header=BB13_131 Depth=1
	testl	%eax, %eax
	jne	.LBB13_134
# %bb.133:                              #   in Loop: Header=BB13_131 Depth=1
	movq	72(%rsp), %rdi
	movq	136(%rsp), %rsi
	movq	104(%rsp), %rdx
.Ltmp233:
	movl	$512, %ecx                      # imm = 0x200
	callq	_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
.Ltmp234:
.LBB13_134:                             #   in Loop: Header=BB13_131 Depth=1
.Ltmp235:
	callq	hipDeviceSynchronize
.Ltmp236:
# %bb.135:                              # %_Z9gpuAssert10hipError_tPKcib.exit337
                                        #   in Loop: Header=BB13_131 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_200
# %bb.136:                              #   in Loop: Header=BB13_131 Depth=1
	decl	%r12d
	jne	.LBB13_131
# %bb.137:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp241:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.11, %esi
	movl	$50, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp242:
# %bb.138:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit339
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp243:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp244:
# %bb.139:                              # %_ZNSolsEd.exit341
.Ltmp245:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp246:
# %bb.140:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit343
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp247:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp248:
# %bb.141:                              # %.noexc423
.Ltmp249:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp250:
# %bb.142:                              # %.noexc424
.Ltmp251:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp252:
# %bb.143:                              # %_ZNSolsEPFRSoS_E.exit345
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967297, %r14               # imm = 0x100000001
	movabsq	$4294967808, %r15               # imm = 0x100000200
.LBB13_144:                             # =>This Inner Loop Header: Depth=1
.Ltmp253:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp254:
# %bb.145:                              #   in Loop: Header=BB13_144 Depth=1
	testl	%eax, %eax
	jne	.LBB13_147
# %bb.146:                              #   in Loop: Header=BB13_144 Depth=1
	movq	72(%rsp), %rdi
	movq	136(%rsp), %rsi
	movq	104(%rsp), %rdx
.Ltmp255:
	movl	$512, %ecx                      # imm = 0x200
	xorl	%r8d, %r8d
	callq	_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
.Ltmp256:
.LBB13_147:                             #   in Loop: Header=BB13_144 Depth=1
.Ltmp257:
	callq	hipDeviceSynchronize
.Ltmp258:
# %bb.148:                              # %_Z9gpuAssert10hipError_tPKcib.exit353
                                        #   in Loop: Header=BB13_144 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_202
# %bb.149:                              #   in Loop: Header=BB13_144 Depth=1
	decl	%r12d
	jne	.LBB13_144
# %bb.150:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp263:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.12, %esi
	movl	$50, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp264:
# %bb.151:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit355
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp265:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp266:
# %bb.152:                              # %_ZNSolsEd.exit357
.Ltmp267:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp268:
# %bb.153:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit359
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp269:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp270:
# %bb.154:                              # %.noexc427
.Ltmp271:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp272:
# %bb.155:                              # %.noexc428
.Ltmp273:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp274:
# %bb.156:                              # %_ZNSolsEPFRSoS_E.exit361
	movl	$32, %r12d
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %rbx
	movabsq	$4294967297, %r14               # imm = 0x100000001
	movabsq	$4294967808, %r15               # imm = 0x100000200
.LBB13_157:                             # =>This Inner Loop Header: Depth=1
.Ltmp275:
	movq	%r14, %rdi
	movl	$1, %esi
	movq	%r15, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp276:
# %bb.158:                              #   in Loop: Header=BB13_157 Depth=1
	testl	%eax, %eax
	jne	.LBB13_160
# %bb.159:                              #   in Loop: Header=BB13_157 Depth=1
	movq	72(%rsp), %rdi
	movq	136(%rsp), %rsi
	movq	104(%rsp), %rdx
	movq	176(%rsp), %rcx
.Ltmp277:
	movl	$512, %r8d                      # imm = 0x200
	xorl	%r9d, %r9d
	callq	_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
.Ltmp278:
.LBB13_160:                             #   in Loop: Header=BB13_157 Depth=1
.Ltmp279:
	callq	hipDeviceSynchronize
.Ltmp280:
# %bb.161:                              # %_Z9gpuAssert10hipError_tPKcib.exit370
                                        #   in Loop: Header=BB13_157 Depth=1
	movl	%eax, %ebp
	testl	%eax, %eax
	jne	.LBB13_204
# %bb.162:                              #   in Loop: Header=BB13_157 Depth=1
	decl	%r12d
	jne	.LBB13_157
# %bb.163:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
.Ltmp285:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.13, %esi
	movl	$34, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp286:
# %bb.164:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit372
	subq	%rbx, %r14
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r14, %xmm0
	divsd	.LCPI13_1(%rip), %xmm0
	mulsd	.LCPI13_2(%rip), %xmm0
.Ltmp287:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp288:
# %bb.165:                              # %_ZNSolsEd.exit374
.Ltmp289:
	movq	%rax, %rbx
	movl	$.L.str.2, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp290:
# %bb.166:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit376
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp291:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp292:
# %bb.167:                              # %.noexc431
.Ltmp293:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp294:
# %bb.168:                              # %.noexc432
.Ltmp295:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp296:
# %bb.169:                              # %_ZNSolsEPFRSoS_E.exit378
	movq	184(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_171
# %bb.170:
	movq	168(%rsp), %rax
	movq	176(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp316:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp317:
.LBB13_171:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit
	movq	112(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_173
# %bb.172:
	movq	96(%rsp), %rax
	movq	104(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp319:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp320:
.LBB13_173:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit379
	movq	144(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_175
# %bb.174:
	movq	128(%rsp), %rax
	movq	136(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp322:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp323:
.LBB13_175:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit380
	movq	80(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_177
# %bb.176:
	movq	64(%rsp), %rax
	movq	72(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp325:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp326:
.LBB13_177:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit381
	movq	48(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_179
# %bb.178:
	movq	32(%rsp), %rax
	movq	40(%rsp), %rsi
	shlq	$3, %rdx
	movq	8(%rax), %rdi
.Ltmp328:
	movl	$8, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp329:
.LBB13_179:                             # %_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEED2Ev.exit
	movq	216(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_181
# %bb.180:
	movq	200(%rsp), %rax
	movq	208(%rsp), %rsi
	movq	8(%rax), %rdi
.Ltmp331:
	movl	$1, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp332:
.LBB13_181:                             # %_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEED2Ev.exit
	xorl	%eax, %eax
	addq	$400, %rsp                      # imm = 0x190
	.cfi_def_cfa_offset 48
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB13_182:
	.cfi_def_cfa_offset 448
	movq	stderr(%rip), %rbx
.Ltmp38:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp39:
# %bb.183:                              # %.noexc198
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$884, %r8d                      # imm = 0x374
	jmp	.LBB13_206
.LBB13_184:
	movq	stderr(%rip), %rbx
.Ltmp60:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp61:
# %bb.185:                              # %.noexc209
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$894, %r8d                      # imm = 0x37E
	jmp	.LBB13_206
.LBB13_186:
	movq	stderr(%rip), %rbx
.Ltmp82:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp83:
# %bb.187:                              # %.noexc224
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$904, %r8d                      # imm = 0x388
	jmp	.LBB13_206
.LBB13_188:
	movq	stderr(%rip), %rbx
.Ltmp104:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp105:
# %bb.189:                              # %.noexc239
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$914, %r8d                      # imm = 0x392
	jmp	.LBB13_206
.LBB13_190:
	movq	stderr(%rip), %rbx
.Ltmp127:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp128:
# %bb.191:                              # %.noexc254
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$931, %r8d                      # imm = 0x3A3
	jmp	.LBB13_206
.LBB13_192:
	movq	stderr(%rip), %rbx
.Ltmp149:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp150:
# %bb.193:                              # %.noexc269
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$942, %r8d                      # imm = 0x3AE
	jmp	.LBB13_206
.LBB13_194:
	movq	stderr(%rip), %rbx
.Ltmp171:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp172:
# %bb.195:                              # %.noexc286
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$954, %r8d                      # imm = 0x3BA
	jmp	.LBB13_206
.LBB13_196:
	movq	stderr(%rip), %rbx
.Ltmp193:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp194:
# %bb.197:                              # %.noexc303
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$966, %r8d                      # imm = 0x3C6
	jmp	.LBB13_206
.LBB13_198:
	movq	stderr(%rip), %rbx
.Ltmp215:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp216:
# %bb.199:                              # %.noexc320
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$978, %r8d                      # imm = 0x3D2
	jmp	.LBB13_206
.LBB13_200:
	movq	stderr(%rip), %rbx
.Ltmp238:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp239:
# %bb.201:                              # %.noexc336
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$998, %r8d                      # imm = 0x3E6
	jmp	.LBB13_206
.LBB13_202:
	movq	stderr(%rip), %rbx
.Ltmp260:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp261:
# %bb.203:                              # %.noexc352
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$1011, %r8d                     # imm = 0x3F3
	jmp	.LBB13_206
.LBB13_204:
	movq	stderr(%rip), %rbx
.Ltmp282:
	movl	%ebp, %edi
	callq	hipGetErrorString
.Ltmp283:
# %bb.205:                              # %.noexc369
	movl	$.L.str.14, %esi
	movl	$.L.str, %ecx
	movq	%rbx, %rdi
	movq	%rax, %rdx
	movl	$1023, %r8d                     # imm = 0x3FF
.LBB13_206:                             # %.noexc198
	xorl	%eax, %eax
	callq	fprintf
	movl	%ebp, %edi
	callq	exit
.LBB13_207:
.Ltmp333:
	jmp	.LBB13_268
.LBB13_208:
.Ltmp330:
	jmp	.LBB13_268
.LBB13_209:
.Ltmp327:
	jmp	.LBB13_268
.LBB13_210:
.Ltmp324:
	jmp	.LBB13_268
.LBB13_211:
.Ltmp321:
	jmp	.LBB13_268
.LBB13_212:
.Ltmp318:
	jmp	.LBB13_268
.LBB13_213:
.Ltmp25:
	jmp	.LBB13_249
.LBB13_214:
.Ltmp22:
	jmp	.LBB13_249
.LBB13_215:
.Ltmp14:
	movq	%rax, %rbx
	jmp	.LBB13_251
.LBB13_216:
.Ltmp11:
	movq	%rax, %rbx
	jmp	.LBB13_253
.LBB13_217:
.Ltmp8:
	movq	%rax, %rbx
	jmp	.LBB13_255
.LBB13_218:
.Ltmp5:
	movq	%rax, %rbx
	jmp	.LBB13_257
.LBB13_219:
.Ltmp2:
	movq	%rax, %rbx
	jmp	.LBB13_259
.LBB13_220:
.Ltmp19:
	jmp	.LBB13_249
.LBB13_221:
.Ltmp30:
	jmp	.LBB13_249
.LBB13_222:                             # %.loopexit.split-lp
.Ltmp284:
	jmp	.LBB13_249
.LBB13_223:                             # %.loopexit.split-lp609
.Ltmp262:
	jmp	.LBB13_249
.LBB13_224:                             # %.loopexit.split-lp614
.Ltmp240:
	jmp	.LBB13_249
.LBB13_225:                             # %.loopexit.split-lp619
.Ltmp217:
	jmp	.LBB13_249
.LBB13_226:                             # %.loopexit.split-lp624
.Ltmp195:
	jmp	.LBB13_249
.LBB13_227:                             # %.loopexit.split-lp629
.Ltmp173:
	jmp	.LBB13_249
.LBB13_228:                             # %.loopexit.split-lp634
.Ltmp151:
	jmp	.LBB13_249
.LBB13_229:                             # %.loopexit.split-lp639
.Ltmp129:
	jmp	.LBB13_249
.LBB13_230:                             # %.loopexit.split-lp644
.Ltmp106:
	jmp	.LBB13_249
.LBB13_231:                             # %.loopexit.split-lp649
.Ltmp84:
	jmp	.LBB13_249
.LBB13_232:                             # %.loopexit.split-lp654
.Ltmp62:
	jmp	.LBB13_249
.LBB13_233:                             # %.loopexit.split-lp659
.Ltmp40:
	jmp	.LBB13_249
.LBB13_234:
.Ltmp297:
	jmp	.LBB13_249
.LBB13_235:
.Ltmp119:
	jmp	.LBB13_249
.LBB13_236:
.Ltmp230:
	jmp	.LBB13_249
.LBB13_237:                             # %.loopexit
.Ltmp281:
	jmp	.LBB13_249
.LBB13_238:                             # %.loopexit608
.Ltmp259:
	jmp	.LBB13_249
.LBB13_239:                             # %.loopexit613
.Ltmp237:
	jmp	.LBB13_249
.LBB13_240:                             # %.loopexit618
.Ltmp214:
	jmp	.LBB13_249
.LBB13_241:                             # %.loopexit623
.Ltmp192:
	jmp	.LBB13_249
.LBB13_242:                             # %.loopexit628
.Ltmp170:
	jmp	.LBB13_249
.LBB13_243:                             # %.loopexit633
.Ltmp148:
	jmp	.LBB13_249
.LBB13_244:                             # %.loopexit638
.Ltmp126:
	jmp	.LBB13_249
.LBB13_245:                             # %.loopexit643
.Ltmp103:
	jmp	.LBB13_249
.LBB13_246:                             # %.loopexit648
.Ltmp81:
	jmp	.LBB13_249
.LBB13_247:                             # %.loopexit653
.Ltmp59:
	jmp	.LBB13_249
.LBB13_248:                             # %.loopexit658
.Ltmp37:
.LBB13_249:
	movq	%rax, %rbx
	movq	184(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_251
# %bb.250:
	movq	168(%rsp), %rax
	movq	176(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp298:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp299:
.LBB13_251:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit382
	movq	112(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_253
# %bb.252:
	movq	96(%rsp), %rax
	movq	104(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp301:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp302:
.LBB13_253:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit383
	movq	144(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_255
# %bb.254:
	movq	128(%rsp), %rax
	movq	136(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp304:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp305:
.LBB13_255:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit384
	movq	80(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_257
# %bb.256:
	movq	64(%rsp), %rax
	movq	72(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp307:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp308:
.LBB13_257:                             # %_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEED2Ev.exit385
	movq	48(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_259
# %bb.258:
	movq	32(%rsp), %rax
	movq	40(%rsp), %rsi
	shlq	$3, %rdx
	movq	8(%rax), %rdi
.Ltmp310:
	movl	$8, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp311:
.LBB13_259:                             # %_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEED2Ev.exit386
	movq	216(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB13_261
# %bb.260:
	movq	200(%rsp), %rax
	movq	208(%rsp), %rsi
	movq	8(%rax), %rdi
.Ltmp313:
	movl	$1, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp314:
.LBB13_261:                             # %_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEED2Ev.exit387
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.LBB13_262:
.Ltmp315:
	jmp	.LBB13_268
.LBB13_263:
.Ltmp312:
	jmp	.LBB13_268
.LBB13_264:
.Ltmp309:
	jmp	.LBB13_268
.LBB13_265:
.Ltmp306:
	jmp	.LBB13_268
.LBB13_266:
.Ltmp303:
	jmp	.LBB13_268
.LBB13_267:
.Ltmp300:
.LBB13_268:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end13:
	.size	main, .Lfunc_end13-main
	.cfi_endproc
	.section	.gcc_except_table,"a",@progbits
	.p2align	2, 0x0
GCC_except_table13:
.Lexception0:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase0-.Lttbaseref0
.Lttbaseref0:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end0-.Lcst_begin0
.Lcst_begin0:
	.uleb128 .Lfunc_begin0-.Lfunc_begin0    # >> Call Site 1 <<
	.uleb128 .Ltmp0-.Lfunc_begin0           #   Call between .Lfunc_begin0 and .Ltmp0
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp0-.Lfunc_begin0           # >> Call Site 2 <<
	.uleb128 .Ltmp1-.Ltmp0                  #   Call between .Ltmp0 and .Ltmp1
	.uleb128 .Ltmp2-.Lfunc_begin0           #     jumps to .Ltmp2
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp3-.Lfunc_begin0           # >> Call Site 3 <<
	.uleb128 .Ltmp4-.Ltmp3                  #   Call between .Ltmp3 and .Ltmp4
	.uleb128 .Ltmp5-.Lfunc_begin0           #     jumps to .Ltmp5
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp6-.Lfunc_begin0           # >> Call Site 4 <<
	.uleb128 .Ltmp7-.Ltmp6                  #   Call between .Ltmp6 and .Ltmp7
	.uleb128 .Ltmp8-.Lfunc_begin0           #     jumps to .Ltmp8
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp9-.Lfunc_begin0           # >> Call Site 5 <<
	.uleb128 .Ltmp10-.Ltmp9                 #   Call between .Ltmp9 and .Ltmp10
	.uleb128 .Ltmp11-.Lfunc_begin0          #     jumps to .Ltmp11
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp12-.Lfunc_begin0          # >> Call Site 6 <<
	.uleb128 .Ltmp13-.Ltmp12                #   Call between .Ltmp12 and .Ltmp13
	.uleb128 .Ltmp14-.Lfunc_begin0          #     jumps to .Ltmp14
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp15-.Lfunc_begin0          # >> Call Site 7 <<
	.uleb128 .Ltmp18-.Ltmp15                #   Call between .Ltmp15 and .Ltmp18
	.uleb128 .Ltmp19-.Lfunc_begin0          #     jumps to .Ltmp19
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp20-.Lfunc_begin0          # >> Call Site 8 <<
	.uleb128 .Ltmp21-.Ltmp20                #   Call between .Ltmp20 and .Ltmp21
	.uleb128 .Ltmp22-.Lfunc_begin0          #     jumps to .Ltmp22
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp23-.Lfunc_begin0          # >> Call Site 9 <<
	.uleb128 .Ltmp24-.Ltmp23                #   Call between .Ltmp23 and .Ltmp24
	.uleb128 .Ltmp25-.Lfunc_begin0          #     jumps to .Ltmp25
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp26-.Lfunc_begin0          # >> Call Site 10 <<
	.uleb128 .Ltmp29-.Ltmp26                #   Call between .Ltmp26 and .Ltmp29
	.uleb128 .Ltmp30-.Lfunc_begin0          #     jumps to .Ltmp30
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp31-.Lfunc_begin0          # >> Call Site 11 <<
	.uleb128 .Ltmp36-.Ltmp31                #   Call between .Ltmp31 and .Ltmp36
	.uleb128 .Ltmp37-.Lfunc_begin0          #     jumps to .Ltmp37
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp41-.Lfunc_begin0          # >> Call Site 12 <<
	.uleb128 .Ltmp52-.Ltmp41                #   Call between .Ltmp41 and .Ltmp52
	.uleb128 .Ltmp119-.Lfunc_begin0         #     jumps to .Ltmp119
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp53-.Lfunc_begin0          # >> Call Site 13 <<
	.uleb128 .Ltmp58-.Ltmp53                #   Call between .Ltmp53 and .Ltmp58
	.uleb128 .Ltmp59-.Lfunc_begin0          #     jumps to .Ltmp59
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp63-.Lfunc_begin0          # >> Call Site 14 <<
	.uleb128 .Ltmp74-.Ltmp63                #   Call between .Ltmp63 and .Ltmp74
	.uleb128 .Ltmp119-.Lfunc_begin0         #     jumps to .Ltmp119
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp75-.Lfunc_begin0          # >> Call Site 15 <<
	.uleb128 .Ltmp80-.Ltmp75                #   Call between .Ltmp75 and .Ltmp80
	.uleb128 .Ltmp81-.Lfunc_begin0          #     jumps to .Ltmp81
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp85-.Lfunc_begin0          # >> Call Site 16 <<
	.uleb128 .Ltmp96-.Ltmp85                #   Call between .Ltmp85 and .Ltmp96
	.uleb128 .Ltmp119-.Lfunc_begin0         #     jumps to .Ltmp119
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp97-.Lfunc_begin0          # >> Call Site 17 <<
	.uleb128 .Ltmp102-.Ltmp97               #   Call between .Ltmp97 and .Ltmp102
	.uleb128 .Ltmp103-.Lfunc_begin0         #     jumps to .Ltmp103
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp107-.Lfunc_begin0         # >> Call Site 18 <<
	.uleb128 .Ltmp118-.Ltmp107              #   Call between .Ltmp107 and .Ltmp118
	.uleb128 .Ltmp119-.Lfunc_begin0         #     jumps to .Ltmp119
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp120-.Lfunc_begin0         # >> Call Site 19 <<
	.uleb128 .Ltmp125-.Ltmp120              #   Call between .Ltmp120 and .Ltmp125
	.uleb128 .Ltmp126-.Lfunc_begin0         #     jumps to .Ltmp126
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp130-.Lfunc_begin0         # >> Call Site 20 <<
	.uleb128 .Ltmp141-.Ltmp130              #   Call between .Ltmp130 and .Ltmp141
	.uleb128 .Ltmp230-.Lfunc_begin0         #     jumps to .Ltmp230
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp142-.Lfunc_begin0         # >> Call Site 21 <<
	.uleb128 .Ltmp147-.Ltmp142              #   Call between .Ltmp142 and .Ltmp147
	.uleb128 .Ltmp148-.Lfunc_begin0         #     jumps to .Ltmp148
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp152-.Lfunc_begin0         # >> Call Site 22 <<
	.uleb128 .Ltmp163-.Ltmp152              #   Call between .Ltmp152 and .Ltmp163
	.uleb128 .Ltmp230-.Lfunc_begin0         #     jumps to .Ltmp230
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp164-.Lfunc_begin0         # >> Call Site 23 <<
	.uleb128 .Ltmp169-.Ltmp164              #   Call between .Ltmp164 and .Ltmp169
	.uleb128 .Ltmp170-.Lfunc_begin0         #     jumps to .Ltmp170
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp174-.Lfunc_begin0         # >> Call Site 24 <<
	.uleb128 .Ltmp185-.Ltmp174              #   Call between .Ltmp174 and .Ltmp185
	.uleb128 .Ltmp230-.Lfunc_begin0         #     jumps to .Ltmp230
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp186-.Lfunc_begin0         # >> Call Site 25 <<
	.uleb128 .Ltmp191-.Ltmp186              #   Call between .Ltmp186 and .Ltmp191
	.uleb128 .Ltmp192-.Lfunc_begin0         #     jumps to .Ltmp192
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp196-.Lfunc_begin0         # >> Call Site 26 <<
	.uleb128 .Ltmp207-.Ltmp196              #   Call between .Ltmp196 and .Ltmp207
	.uleb128 .Ltmp230-.Lfunc_begin0         #     jumps to .Ltmp230
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp208-.Lfunc_begin0         # >> Call Site 27 <<
	.uleb128 .Ltmp213-.Ltmp208              #   Call between .Ltmp208 and .Ltmp213
	.uleb128 .Ltmp214-.Lfunc_begin0         #     jumps to .Ltmp214
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp218-.Lfunc_begin0         # >> Call Site 28 <<
	.uleb128 .Ltmp229-.Ltmp218              #   Call between .Ltmp218 and .Ltmp229
	.uleb128 .Ltmp230-.Lfunc_begin0         #     jumps to .Ltmp230
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp231-.Lfunc_begin0         # >> Call Site 29 <<
	.uleb128 .Ltmp236-.Ltmp231              #   Call between .Ltmp231 and .Ltmp236
	.uleb128 .Ltmp237-.Lfunc_begin0         #     jumps to .Ltmp237
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp241-.Lfunc_begin0         # >> Call Site 30 <<
	.uleb128 .Ltmp252-.Ltmp241              #   Call between .Ltmp241 and .Ltmp252
	.uleb128 .Ltmp297-.Lfunc_begin0         #     jumps to .Ltmp297
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp253-.Lfunc_begin0         # >> Call Site 31 <<
	.uleb128 .Ltmp258-.Ltmp253              #   Call between .Ltmp253 and .Ltmp258
	.uleb128 .Ltmp259-.Lfunc_begin0         #     jumps to .Ltmp259
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp263-.Lfunc_begin0         # >> Call Site 32 <<
	.uleb128 .Ltmp274-.Ltmp263              #   Call between .Ltmp263 and .Ltmp274
	.uleb128 .Ltmp297-.Lfunc_begin0         #     jumps to .Ltmp297
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp275-.Lfunc_begin0         # >> Call Site 33 <<
	.uleb128 .Ltmp280-.Ltmp275              #   Call between .Ltmp275 and .Ltmp280
	.uleb128 .Ltmp281-.Lfunc_begin0         #     jumps to .Ltmp281
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp285-.Lfunc_begin0         # >> Call Site 34 <<
	.uleb128 .Ltmp296-.Ltmp285              #   Call between .Ltmp285 and .Ltmp296
	.uleb128 .Ltmp297-.Lfunc_begin0         #     jumps to .Ltmp297
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp316-.Lfunc_begin0         # >> Call Site 35 <<
	.uleb128 .Ltmp317-.Ltmp316              #   Call between .Ltmp316 and .Ltmp317
	.uleb128 .Ltmp318-.Lfunc_begin0         #     jumps to .Ltmp318
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp319-.Lfunc_begin0         # >> Call Site 36 <<
	.uleb128 .Ltmp320-.Ltmp319              #   Call between .Ltmp319 and .Ltmp320
	.uleb128 .Ltmp321-.Lfunc_begin0         #     jumps to .Ltmp321
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp322-.Lfunc_begin0         # >> Call Site 37 <<
	.uleb128 .Ltmp323-.Ltmp322              #   Call between .Ltmp322 and .Ltmp323
	.uleb128 .Ltmp324-.Lfunc_begin0         #     jumps to .Ltmp324
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp325-.Lfunc_begin0         # >> Call Site 38 <<
	.uleb128 .Ltmp326-.Ltmp325              #   Call between .Ltmp325 and .Ltmp326
	.uleb128 .Ltmp327-.Lfunc_begin0         #     jumps to .Ltmp327
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp328-.Lfunc_begin0         # >> Call Site 39 <<
	.uleb128 .Ltmp329-.Ltmp328              #   Call between .Ltmp328 and .Ltmp329
	.uleb128 .Ltmp330-.Lfunc_begin0         #     jumps to .Ltmp330
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp331-.Lfunc_begin0         # >> Call Site 40 <<
	.uleb128 .Ltmp332-.Ltmp331              #   Call between .Ltmp331 and .Ltmp332
	.uleb128 .Ltmp333-.Lfunc_begin0         #     jumps to .Ltmp333
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp38-.Lfunc_begin0          # >> Call Site 41 <<
	.uleb128 .Ltmp39-.Ltmp38                #   Call between .Ltmp38 and .Ltmp39
	.uleb128 .Ltmp40-.Lfunc_begin0          #     jumps to .Ltmp40
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp60-.Lfunc_begin0          # >> Call Site 42 <<
	.uleb128 .Ltmp61-.Ltmp60                #   Call between .Ltmp60 and .Ltmp61
	.uleb128 .Ltmp62-.Lfunc_begin0          #     jumps to .Ltmp62
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp82-.Lfunc_begin0          # >> Call Site 43 <<
	.uleb128 .Ltmp83-.Ltmp82                #   Call between .Ltmp82 and .Ltmp83
	.uleb128 .Ltmp84-.Lfunc_begin0          #     jumps to .Ltmp84
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp104-.Lfunc_begin0         # >> Call Site 44 <<
	.uleb128 .Ltmp105-.Ltmp104              #   Call between .Ltmp104 and .Ltmp105
	.uleb128 .Ltmp106-.Lfunc_begin0         #     jumps to .Ltmp106
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp127-.Lfunc_begin0         # >> Call Site 45 <<
	.uleb128 .Ltmp128-.Ltmp127              #   Call between .Ltmp127 and .Ltmp128
	.uleb128 .Ltmp129-.Lfunc_begin0         #     jumps to .Ltmp129
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp149-.Lfunc_begin0         # >> Call Site 46 <<
	.uleb128 .Ltmp150-.Ltmp149              #   Call between .Ltmp149 and .Ltmp150
	.uleb128 .Ltmp151-.Lfunc_begin0         #     jumps to .Ltmp151
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp171-.Lfunc_begin0         # >> Call Site 47 <<
	.uleb128 .Ltmp172-.Ltmp171              #   Call between .Ltmp171 and .Ltmp172
	.uleb128 .Ltmp173-.Lfunc_begin0         #     jumps to .Ltmp173
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp193-.Lfunc_begin0         # >> Call Site 48 <<
	.uleb128 .Ltmp194-.Ltmp193              #   Call between .Ltmp193 and .Ltmp194
	.uleb128 .Ltmp195-.Lfunc_begin0         #     jumps to .Ltmp195
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp215-.Lfunc_begin0         # >> Call Site 49 <<
	.uleb128 .Ltmp216-.Ltmp215              #   Call between .Ltmp215 and .Ltmp216
	.uleb128 .Ltmp217-.Lfunc_begin0         #     jumps to .Ltmp217
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp238-.Lfunc_begin0         # >> Call Site 50 <<
	.uleb128 .Ltmp239-.Ltmp238              #   Call between .Ltmp238 and .Ltmp239
	.uleb128 .Ltmp240-.Lfunc_begin0         #     jumps to .Ltmp240
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp260-.Lfunc_begin0         # >> Call Site 51 <<
	.uleb128 .Ltmp261-.Ltmp260              #   Call between .Ltmp260 and .Ltmp261
	.uleb128 .Ltmp262-.Lfunc_begin0         #     jumps to .Ltmp262
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp282-.Lfunc_begin0         # >> Call Site 52 <<
	.uleb128 .Ltmp283-.Ltmp282              #   Call between .Ltmp282 and .Ltmp283
	.uleb128 .Ltmp284-.Lfunc_begin0         #     jumps to .Ltmp284
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp298-.Lfunc_begin0         # >> Call Site 53 <<
	.uleb128 .Ltmp299-.Ltmp298              #   Call between .Ltmp298 and .Ltmp299
	.uleb128 .Ltmp300-.Lfunc_begin0         #     jumps to .Ltmp300
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp301-.Lfunc_begin0         # >> Call Site 54 <<
	.uleb128 .Ltmp302-.Ltmp301              #   Call between .Ltmp301 and .Ltmp302
	.uleb128 .Ltmp303-.Lfunc_begin0         #     jumps to .Ltmp303
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp304-.Lfunc_begin0         # >> Call Site 55 <<
	.uleb128 .Ltmp305-.Ltmp304              #   Call between .Ltmp304 and .Ltmp305
	.uleb128 .Ltmp306-.Lfunc_begin0         #     jumps to .Ltmp306
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp307-.Lfunc_begin0         # >> Call Site 56 <<
	.uleb128 .Ltmp308-.Ltmp307              #   Call between .Ltmp307 and .Ltmp308
	.uleb128 .Ltmp309-.Lfunc_begin0         #     jumps to .Ltmp309
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp310-.Lfunc_begin0         # >> Call Site 57 <<
	.uleb128 .Ltmp311-.Ltmp310              #   Call between .Ltmp310 and .Ltmp311
	.uleb128 .Ltmp312-.Lfunc_begin0         #     jumps to .Ltmp312
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp313-.Lfunc_begin0         # >> Call Site 58 <<
	.uleb128 .Ltmp314-.Ltmp313              #   Call between .Ltmp313 and .Ltmp314
	.uleb128 .Ltmp315-.Lfunc_begin0         #     jumps to .Ltmp315
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp314-.Lfunc_begin0         # >> Call Site 59 <<
	.uleb128 .Lfunc_end13-.Ltmp314          #   Call between .Ltmp314 and .Lfunc_end13
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end0:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase0:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text.__clang_call_terminate,"axG",@progbits,__clang_call_terminate,comdat
	.hidden	__clang_call_terminate          # -- Begin function __clang_call_terminate
	.weak	__clang_call_terminate
	.type	__clang_call_terminate,@function
__clang_call_terminate:                 # @__clang_call_terminate
	.cfi_startproc
# %bb.0:
	pushq	%rax
	.cfi_def_cfa_offset 16
	callq	__cxa_begin_catch
	callq	_ZSt9terminatev
.Lfunc_end14:
	.size	__clang_call_terminate, .Lfunc_end14-__clang_call_terminate
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em,"axG",@progbits,_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em,comdat
	.weak	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em # -- Begin function _ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em,@function
_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em: # @_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em
.Lfunc_begin1:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception1
# %bb.0:
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %r14
	movq	%rdi, %rbx
	callq	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	movq	%rax, (%rbx)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	movq	$0, 24(%rbx)
.Ltmp334:
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm
.Ltmp335:
# %bb.1:
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	retq
.LBB15_3:
	.cfi_def_cfa_offset 32
.Ltmp336:
	movq	%rax, %r14
.Ltmp337:
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv
.Ltmp338:
# %bb.4:                                # %_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEED2Ev.exit
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.LBB15_2:
.Ltmp339:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end15:
	.size	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em, .Lfunc_end15-_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em,"aG",@progbits,_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEEC2Em,comdat
	.p2align	2, 0x0
GCC_except_table15:
.Lexception1:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase1-.Lttbaseref1
.Lttbaseref1:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end1-.Lcst_begin1
.Lcst_begin1:
	.uleb128 .Lfunc_begin1-.Lfunc_begin1    # >> Call Site 1 <<
	.uleb128 .Ltmp334-.Lfunc_begin1         #   Call between .Lfunc_begin1 and .Ltmp334
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp334-.Lfunc_begin1         # >> Call Site 2 <<
	.uleb128 .Ltmp335-.Ltmp334              #   Call between .Ltmp334 and .Ltmp335
	.uleb128 .Ltmp336-.Lfunc_begin1         #     jumps to .Ltmp336
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp337-.Lfunc_begin1         # >> Call Site 3 <<
	.uleb128 .Ltmp338-.Ltmp337              #   Call between .Ltmp337 and .Ltmp338
	.uleb128 .Ltmp339-.Lfunc_begin1         #     jumps to .Ltmp339
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp338-.Lfunc_begin1         # >> Call Site 4 <<
	.uleb128 .Lfunc_end15-.Ltmp338          #   Call between .Ltmp338 and .Lfunc_end15
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end1:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase1:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm,"axG",@progbits,_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm,comdat
	.weak	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm # -- Begin function _ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm,@function
_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm: # @_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm
	.cfi_startproc
# %bb.0:
	testq	%rsi, %rsi
	je	.LBB16_2
# %bb.1:                                # %_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE19default_construct_nENS0_15normal_iteratorINS_10device_ptrIhEEEEm.exit
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %rbx
	movq	%rdi, %r14
	movq	(%rdi), %rax
	movq	8(%rax), %rdi
	movl	$1, %edx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	movq	%rax, 8(%r14)
	movq	%rbx, 16(%r14)
	movq	%rbx, 24(%r14)
	leaq	7(%rsp), %rdi
	movq	%rax, %rsi
	xorl	%edx, %edx
	movq	%rbx, %rcx
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	.cfi_restore %rbx
	.cfi_restore %r14
.LBB16_2:
	retq
.Lfunc_end16:
	.size	_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm, .Lfunc_end16-_ZN6thrust6detail11vector_baseIhNS_16device_allocatorIhEEE12default_initEm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v,"axG",@progbits,_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v,comdat
	.weak	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v # -- Begin function _ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	.type	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v,@function
_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v: # @_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	.cfi_startproc
# %bb.0:
	movb	_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource(%rip), %al
	testb	%al, %al
	je	.LBB17_1
.LBB17_4:
	movl	$_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource, %eax
	retq
.LBB17_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB17_3
# %bb.2:
	movq	$_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE+16, _ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource(%rip)
	callq	_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v
	movq	%rax, _ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource+8(%rip)
	movl	$_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource, %edi
	callq	__cxa_guard_release
.LBB17_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB17_4
.Lfunc_end17:
	.size	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v, .Lfunc_end17-_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev,"axG",@progbits,_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev,comdat
	.weak	_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev # -- Begin function _ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev,@function
_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev: # @_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev
	.cfi_startproc
# %bb.0:
	retq
.Lfunc_end18:
	.size	_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev, .Lfunc_end18-_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v,"axG",@progbits,_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v,comdat
	.weak	_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v # -- Begin function _ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v
	.type	_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v,@function
_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v: # @_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v
	.cfi_startproc
# %bb.0:
	movb	_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource(%rip), %al
	testb	%al, %al
	je	.LBB19_1
.LBB19_4:
	movl	$_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, %eax
	retq
.LBB19_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB19_3
# %bb.2:
	movl	$_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, %edi
	callq	__cxa_guard_release
.LBB19_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB19_4
.Lfunc_end19:
	.size	_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v, .Lfunc_end19-_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev,"axG",@progbits,_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev,comdat
	.weak	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev # -- Begin function _ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev,@function
_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev: # @_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev
	.cfi_startproc
# %bb.0:
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end20:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev, .Lfunc_end20-_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm,"axG",@progbits,_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm,comdat
	.weak	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm # -- Begin function _ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm
	.p2align	1, 0x90
	.type	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm,@function
_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm: # @_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm
	.cfi_startproc
# %bb.0:
	movq	8(%rdi), %rdi
	jmp	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm # TAILCALL
.Lfunc_end21:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm, .Lfunc_end21-_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm,"axG",@progbits,_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm,comdat
	.weak	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm # -- Begin function _ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm
	.p2align	1, 0x90
	.type	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm,@function
_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm: # @_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm
	.cfi_startproc
# %bb.0:
	movq	8(%rdi), %rdi
	jmp	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm # TAILCALL
.Lfunc_end22:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm, .Lfunc_end22-_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_,"axG",@progbits,_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_,comdat
	.weak	_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_ # -- Begin function _ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_
	.p2align	1, 0x90
	.type	_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_,@function
_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_: # @_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_
	.cfi_startproc
# %bb.0:
	cmpq	%rsi, %rdi
	sete	%al
	retq
.Lfunc_end23:
	.size	_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_, .Lfunc_end23-_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev,"axG",@progbits,_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev,comdat
	.weak	_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev # -- Begin function _ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev,@function
_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev: # @_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev
	.cfi_startproc
# %bb.0:
	retq
.Lfunc_end24:
	.size	_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev, .Lfunc_end24-_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev,"axG",@progbits,_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev,comdat
	.weak	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev # -- Begin function _ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev,@function
_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev: # @_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev
	.cfi_startproc
# %bb.0:
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end25:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev, .Lfunc_end25-_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm,"axG",@progbits,_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm,comdat
	.weak	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm # -- Begin function _ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	.p2align	1, 0x90
	.type	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm,@function
_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm: # @_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
.Lfunc_begin2:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception2
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	subq	$80, %rsp
	.cfi_def_cfa_offset 112
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	.cfi_offset %rbp, -16
	leaq	8(%rsp), %rdi
	callq	hipMalloc
	testl	%eax, %eax
	jne	.LBB26_1
# %bb.16:
	movq	8(%rsp), %rax
	addq	$80, %rsp
	.cfi_def_cfa_offset 32
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB26_1:
	.cfi_def_cfa_offset 112
	movl	%eax, %ebp
	callq	hipGetLastError
	movl	$40, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp340:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp341:
# %bb.2:
	movq	(%rax), %rcx
.Ltmp342:
	leaq	16(%rsp), %rdi
	movq	%rax, %rsi
	movl	%ebp, %edx
	callq	*48(%rcx)
.Ltmp343:
# %bb.3:
	movq	16(%rsp), %rsi
.Ltmp345:
	leaq	48(%rsp), %rdi
	leaq	7(%rsp), %rdx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
.Ltmp346:
# %bb.4:
	movb	$1, %bpl
.Ltmp348:
	leaq	48(%rsp), %rsi
	movq	%rbx, %rdi
	callq	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.Ltmp349:
# %bb.5:
	xorl	%ebp, %ebp
.Ltmp350:
	movl	$_ZTIN6thrust6system6detail9bad_allocE, %esi
	movl	$_ZN6thrust6system6detail9bad_allocD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp351:
# %bb.17:
.LBB26_7:
.Ltmp352:
	movq	%rax, %r14
	leaq	64(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB26_9
# %bb.8:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB26_9:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB26_11
# %bb.10:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15
	callq	_ZdlPv
.LBB26_11:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15
	testb	%bpl, %bpl
	jne	.LBB26_14
	jmp	.LBB26_15
.LBB26_12:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit.thread
.Ltmp347:
	movq	%rax, %r14
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB26_14
# %bb.13:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15.thread26
	callq	_ZdlPv
	jmp	.LBB26_14
.LBB26_6:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15.thread
.Ltmp344:
	movq	%rax, %r14
.LBB26_14:
	movq	%rbx, %rdi
	callq	__cxa_free_exception
.LBB26_15:
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end26:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm, .Lfunc_end26-_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm,"aG",@progbits,_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm,comdat
	.p2align	2, 0x0
GCC_except_table26:
.Lexception2:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end2-.Lcst_begin2
.Lcst_begin2:
	.uleb128 .Lfunc_begin2-.Lfunc_begin2    # >> Call Site 1 <<
	.uleb128 .Ltmp340-.Lfunc_begin2         #   Call between .Lfunc_begin2 and .Ltmp340
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp340-.Lfunc_begin2         # >> Call Site 2 <<
	.uleb128 .Ltmp343-.Ltmp340              #   Call between .Ltmp340 and .Ltmp343
	.uleb128 .Ltmp344-.Lfunc_begin2         #     jumps to .Ltmp344
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp345-.Lfunc_begin2         # >> Call Site 3 <<
	.uleb128 .Ltmp346-.Ltmp345              #   Call between .Ltmp345 and .Ltmp346
	.uleb128 .Ltmp347-.Lfunc_begin2         #     jumps to .Ltmp347
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp348-.Lfunc_begin2         # >> Call Site 4 <<
	.uleb128 .Ltmp351-.Ltmp348              #   Call between .Ltmp348 and .Ltmp351
	.uleb128 .Ltmp352-.Lfunc_begin2         #     jumps to .Ltmp352
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp351-.Lfunc_begin2         # >> Call Site 5 <<
	.uleb128 .Lfunc_end26-.Ltmp351          #   Call between .Ltmp351 and .Lfunc_end26
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end2:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm,"axG",@progbits,_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm,comdat
	.weak	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm # -- Begin function _ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	.p2align	1, 0x90
	.type	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm,@function
_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm: # @_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Lfunc_begin3:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception3
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	.cfi_offset %rbp, -16
	movq	%rsi, %rdi
	callq	hipFree
	testl	%eax, %eax
	jne	.LBB27_1
# %bb.5:
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB27_1:
	.cfi_def_cfa_offset 32
	movl	%eax, %ebp
	callq	hipGetLastError
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp353:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp354:
# %bb.2:
.Ltmp355:
	movl	$.L.str.24, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp356:
# %bb.3:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB27_4:
.Ltmp357:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end27:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm, .Lfunc_end27-_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm,"aG",@progbits,_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm,comdat
	.p2align	2, 0x0
GCC_except_table27:
.Lexception3:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end3-.Lcst_begin3
.Lcst_begin3:
	.uleb128 .Lfunc_begin3-.Lfunc_begin3    # >> Call Site 1 <<
	.uleb128 .Ltmp353-.Lfunc_begin3         #   Call between .Lfunc_begin3 and .Ltmp353
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp353-.Lfunc_begin3         # >> Call Site 2 <<
	.uleb128 .Ltmp356-.Ltmp353              #   Call between .Ltmp353 and .Ltmp356
	.uleb128 .Ltmp357-.Lfunc_begin3         #     jumps to .Ltmp357
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp356-.Lfunc_begin3         # >> Call Site 3 <<
	.uleb128 .Lfunc_end27-.Ltmp356          #   Call between .Ltmp356 and .Lfunc_end27
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end3:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_,"axG",@progbits,_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_,comdat
	.weak	_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_ # -- Begin function _ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_
	.p2align	1, 0x90
	.type	_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_,@function
_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_: # @_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_
	.cfi_startproc
# %bb.0:
	cmpq	%rsi, %rdi
	sete	%al
	retq
.Lfunc_end28:
	.size	_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_, .Lfunc_end28-_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system12hip_categoryEv,"axG",@progbits,_ZN6thrust6system12hip_categoryEv,comdat
	.weak	_ZN6thrust6system12hip_categoryEv # -- Begin function _ZN6thrust6system12hip_categoryEv
	.type	_ZN6thrust6system12hip_categoryEv,@function
_ZN6thrust6system12hip_categoryEv:      # @_ZN6thrust6system12hip_categoryEv
	.cfi_startproc
# %bb.0:
	movb	_ZGVZN6thrust6system12hip_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB29_1
.LBB29_4:
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %eax
	retq
.LBB29_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB29_3
# %bb.2:
	movq	$_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE+16, _ZZN6thrust6system12hip_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_release
.LBB29_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB29_4
.Lfunc_end29:
	.size	_ZN6thrust6system12hip_categoryEv, .Lfunc_end29-_ZN6thrust6system12hip_categoryEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_,"axG",@progbits,_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_,comdat
	.weak	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_ # -- Begin function _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.p2align	1, 0x90
	.type	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_,@function
_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_: # @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.cfi_startproc
# %bb.0:
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	leaq	16(%rdi), %rax
	movq	%rax, (%rdi)
	testq	%rsi, %rsi
	je	.LBB30_1
# %bb.2:
	movq	%rsi, %rbx
	movq	%rdi, %r14
	movq	%rsi, %rdi
	callq	strlen
	leaq	(%rax,%rbx), %rdx
	movq	%r14, %rdi
	movq	%rbx, %rsi
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	jmp	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag # TAILCALL
.LBB30_1:
	.cfi_def_cfa_offset 32
	movl	$.L.str.23, %edi
	callq	_ZSt19__throw_logic_errorPKc
.Lfunc_end30:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_, .Lfunc_end30-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,"axG",@progbits,_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,comdat
	.weak	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE # -- Begin function _ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.p2align	1, 0x90
	.type	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,@function
_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE: # @_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.Lfunc_begin4:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception4
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	pushq	%rax
	.cfi_def_cfa_offset 64
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movq	%rsi, %r15
	movq	%rdi, %rbx
	movq	$_ZTVN6thrust6system6detail9bad_allocE+16, (%rdi)
	leaq	8(%rdi), %r14
	leaq	24(%rdi), %rbp
	movq	%rbp, 8(%rdi)
	movq	$0, 16(%rdi)
	movb	$0, 24(%rdi)
	callq	_ZNKSt9bad_alloc4whatEv
	movq	%rax, %r12
	movq	16(%rbx), %r13
	movq	%rax, %rdi
	callq	strlen
.Ltmp358:
	movq	%r14, %rdi
	xorl	%esi, %esi
	movq	%r13, %rdx
	movq	%r12, %rcx
	movq	%rax, %r8
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm
.Ltmp359:
# %bb.1:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEPKc.exit
.Ltmp360:
	movl	$.L.str.21, %esi
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp361:
# %bb.2:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit
	movq	(%r15), %rsi
	movq	8(%r15), %rdx
.Ltmp362:
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm
.Ltmp363:
# %bb.3:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_.exit
	addq	$8, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB31_4:
	.cfi_def_cfa_offset 64
.Ltmp364:
	movq	%rax, %r15
	movq	(%r14), %rdi
	cmpq	%rbp, %rdi
	je	.LBB31_6
# %bb.5:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB31_6:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt9bad_allocD2Ev
	movq	%r15, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end31:
	.size	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE, .Lfunc_end31-_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,"aG",@progbits,_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,comdat
	.p2align	2, 0x0
GCC_except_table31:
.Lexception4:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end4-.Lcst_begin4
.Lcst_begin4:
	.uleb128 .Ltmp358-.Lfunc_begin4         # >> Call Site 1 <<
	.uleb128 .Ltmp363-.Ltmp358              #   Call between .Ltmp358 and .Ltmp363
	.uleb128 .Ltmp364-.Lfunc_begin4         #     jumps to .Ltmp364
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp363-.Lfunc_begin4         # >> Call Site 2 <<
	.uleb128 .Lfunc_end31-.Ltmp363          #   Call between .Ltmp363 and .Lfunc_end31
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end4:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6system6detail9bad_allocD2Ev,"axG",@progbits,_ZN6thrust6system6detail9bad_allocD2Ev,comdat
	.weak	_ZN6thrust6system6detail9bad_allocD2Ev # -- Begin function _ZN6thrust6system6detail9bad_allocD2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system6detail9bad_allocD2Ev,@function
_ZN6thrust6system6detail9bad_allocD2Ev: # @_ZN6thrust6system6detail9bad_allocD2Ev
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	$_ZTVN6thrust6system6detail9bad_allocE+16, (%rdi)
	movq	8(%rdi), %rdi
	leaq	24(%rbx), %rax
	cmpq	%rax, %rdi
	je	.LBB32_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB32_2:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt9bad_allocD2Ev             # TAILCALL
.Lfunc_end32:
	.size	_ZN6thrust6system6detail9bad_allocD2Ev, .Lfunc_end32-_ZN6thrust6system6detail9bad_allocD2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system14error_categoryD2Ev,"axG",@progbits,_ZN6thrust6system14error_categoryD2Ev,comdat
	.weak	_ZN6thrust6system14error_categoryD2Ev # -- Begin function _ZN6thrust6system14error_categoryD2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system14error_categoryD2Ev,@function
_ZN6thrust6system14error_categoryD2Ev:  # @_ZN6thrust6system14error_categoryD2Ev
	.cfi_startproc
# %bb.0:
	movq	$_ZTVN6thrust6system14error_categoryE+16, (%rdi)
	retq
.Lfunc_end33:
	.size	_ZN6thrust6system14error_categoryD2Ev, .Lfunc_end33-_ZN6thrust6system14error_categoryD2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev,"axG",@progbits,_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev,comdat
	.weak	_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev # -- Begin function _ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev,@function
_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev: # @_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev
	.cfi_startproc
# %bb.0:
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end34:
	.size	_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev, .Lfunc_end34-_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv,"axG",@progbits,_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv,comdat
	.weak	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv # -- Begin function _ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv
	.p2align	1, 0x90
	.type	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv,@function
_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv: # @_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv
	.cfi_startproc
# %bb.0:
	movl	$.L.str.15, %eax
	retq
.Lfunc_end35:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv, .Lfunc_end35-_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi,comdat
	.weak	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi # -- Begin function _ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi
	.p2align	1, 0x90
	.type	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi,@function
_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi: # @_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movl	%esi, %ebx
	cmpl	$50, %esi
	jg	.LBB36_5
# %bb.1:
	movb	_ZGVZN6thrust6system12hip_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB36_2
.LBB36_4:                               # %_ZN6thrust6system20make_error_conditionENS0_11hip_rocprim4errc6errc_tE.exit
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %edx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB36_5:
	.cfi_def_cfa_offset 16
	movb	_ZGVZN6thrust6system15system_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB36_6
.LBB36_8:                               # %_ZN6thrust6system15system_categoryEv.exit
	movq	_ZZN6thrust6system15system_categoryEvE6result(%rip), %rax
	movq	24(%rax), %rax
	movl	$_ZZN6thrust6system15system_categoryEvE6result, %edi
	movl	%ebx, %esi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmpq	*%rax                           # TAILCALL
.LBB36_2:
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB36_4
# %bb.3:
	movq	$_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE+16, _ZZN6thrust6system12hip_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_release
	jmp	.LBB36_4
.LBB36_6:
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB36_8
# %bb.7:
	movq	$_ZTVN6thrust6system6detail21system_error_categoryE+16, _ZZN6thrust6system15system_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system15system_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_release
	jmp	.LBB36_8
.Lfunc_end36:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi, .Lfunc_end36-_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE,"axG",@progbits,_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE,comdat
	.weak	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE # -- Begin function _ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.p2align	1, 0x90
	.type	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE,@function
_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE: # @_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdx, %rbx
	movq	(%rdi), %rax
	callq	*24(%rax)
	cmpq	8(%rbx), %rdx
	sete	%cl
	cmpl	(%rbx), %eax
	sete	%al
	andb	%cl, %al
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end37:
	.size	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE, .Lfunc_end37-_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi,"axG",@progbits,_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi,comdat
	.weak	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi # -- Begin function _ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.p2align	1, 0x90
	.type	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi,@function
_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi: # @_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.cfi_startproc
# %bb.0:
	cmpq	%rdi, 8(%rsi)
	sete	%cl
	cmpl	%edx, (%rsi)
	sete	%al
	andb	%cl, %al
	retq
.Lfunc_end38:
	.size	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi, .Lfunc_end38-_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei,comdat
	.weak	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei # -- Begin function _ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei
	.p2align	1, 0x90
	.type	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei,@function
_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei: # @_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei
.Lfunc_begin5:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception5
# %bb.0:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.exit
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$72, %rsp
	.cfi_def_cfa_offset 128
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movl	%edx, %ebp
	movq	%rdi, %rbx
	movl	%edx, %edi
	callq	hipGetErrorString
	movq	%rax, %r15
	movl	%ebp, %edi
	callq	hipGetErrorName
	testq	%rax, %rax
	movl	$.L.str.20, %r14d
	cmovneq	%rax, %r14
	leaq	24(%rsp), %rax
	movq	%rax, -16(%rax)
	movq	%r14, %rdi
	callq	strlen
	leaq	(%rax,%r14), %rdx
	leaq	8(%rsp), %r12
	movq	%r12, %rdi
	movq	%r14, %rsi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
.Ltmp365:
	movl	$.L.str.21, %esi
	movq	%r12, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp366:
# %bb.1:                                # %.noexc
	movq	%rax, %r12
	leaq	56(%rsp), %r14
	movq	%r14, -16(%r14)
	movq	(%rax), %rsi
	movq	%rax, %rbp
	addq	$16, %rbp
	cmpq	%rbp, %rsi
	je	.LBB39_2
# %bb.3:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	movq	%rsi, 40(%rsp)
	movq	16(%r12), %rax
	movq	%rax, 56(%rsp)
	movq	8(%r12), %r13
	jmp	.LBB39_4
.LBB39_2:
	movq	8(%r12), %r13
	leaq	1(%r13), %rdx
	movq	%r14, %rdi
	callq	memcpy@PLT
.LBB39_4:
	leaq	40(%rsp), %rdi
	movq	%r13, 8(%rdi)
	movq	%rbp, (%r12)
	movq	$0, 8(%r12)
	movb	$0, 16(%r12)
	testq	%r15, %r15
	movl	$.L.str.19, %esi
	cmovneq	%r15, %rsi
.Ltmp368:
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp369:
# %bb.5:                                # %.noexc16
	movq	%rax, %r15
	leaq	16(%rbx), %rdi
	movq	%rdi, (%rbx)
	movq	(%rax), %rsi
	movq	%rax, %r12
	addq	$16, %r12
	cmpq	%r12, %rsi
	je	.LBB39_6
# %bb.7:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i13
	movq	%rsi, (%rbx)
	movq	16(%r15), %rax
	movq	%rax, 16(%rbx)
	movq	8(%r15), %r13
	jmp	.LBB39_8
.LBB39_6:
	movq	8(%r15), %r13
	leaq	1(%r13), %rdx
	callq	memcpy@PLT
.LBB39_8:
	movq	%r13, 8(%rbx)
	movq	%r12, (%r15)
	movq	$0, 8(%r15)
	movb	$0, 16(%r15)
	movq	40(%rsp), %rdi
	cmpq	%r14, %rdi
	je	.LBB39_10
# %bb.9:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i18
	callq	_ZdlPv
.LBB39_10:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	8(%rsp), %rdi
	leaq	24(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB39_12
# %bb.11:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i19
	callq	_ZdlPv
.LBB39_12:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit21
	movq	%rbx, %rax
	addq	$72, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB39_14:
	.cfi_def_cfa_offset 128
.Ltmp370:
	movq	%rax, %rbx
	movq	40(%rsp), %rdi
	cmpq	%r14, %rdi
	je	.LBB39_16
# %bb.15:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i22
	callq	_ZdlPv
	jmp	.LBB39_16
.LBB39_13:
.Ltmp367:
	movq	%rax, %rbx
.LBB39_16:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit24
	movq	8(%rsp), %rdi
	leaq	24(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB39_18
# %bb.17:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i25
	callq	_ZdlPv
.LBB39_18:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit27
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end39:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei, .Lfunc_end39-_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei
	.cfi_endproc
	.section	.gcc_except_table._ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei,comdat
	.p2align	2, 0x0
GCC_except_table39:
.Lexception5:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end5-.Lcst_begin5
.Lcst_begin5:
	.uleb128 .Lfunc_begin5-.Lfunc_begin5    # >> Call Site 1 <<
	.uleb128 .Ltmp365-.Lfunc_begin5         #   Call between .Lfunc_begin5 and .Ltmp365
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp365-.Lfunc_begin5         # >> Call Site 2 <<
	.uleb128 .Ltmp366-.Ltmp365              #   Call between .Ltmp365 and .Ltmp366
	.uleb128 .Ltmp367-.Lfunc_begin5         #     jumps to .Ltmp367
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp366-.Lfunc_begin5         # >> Call Site 3 <<
	.uleb128 .Ltmp368-.Ltmp366              #   Call between .Ltmp366 and .Ltmp368
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp368-.Lfunc_begin5         # >> Call Site 4 <<
	.uleb128 .Ltmp369-.Ltmp368              #   Call between .Ltmp368 and .Ltmp369
	.uleb128 .Ltmp370-.Lfunc_begin5         #     jumps to .Ltmp370
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp369-.Lfunc_begin5         # >> Call Site 5 <<
	.uleb128 .Lfunc_end39-.Ltmp369          #   Call between .Ltmp369 and .Lfunc_end39
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end5:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6system14error_categoryD0Ev,"axG",@progbits,_ZN6thrust6system14error_categoryD0Ev,comdat
	.weak	_ZN6thrust6system14error_categoryD0Ev # -- Begin function _ZN6thrust6system14error_categoryD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system14error_categoryD0Ev,@function
_ZN6thrust6system14error_categoryD0Ev:  # @_ZN6thrust6system14error_categoryD0Ev
	.cfi_startproc
# %bb.0:
	ud2
.Lfunc_end40:
	.size	_ZN6thrust6system14error_categoryD0Ev, .Lfunc_end40-_ZN6thrust6system14error_categoryD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system14error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust6system14error_category23default_error_conditionEi,comdat
	.weak	_ZNK6thrust6system14error_category23default_error_conditionEi # -- Begin function _ZNK6thrust6system14error_category23default_error_conditionEi
	.p2align	1, 0x90
	.type	_ZNK6thrust6system14error_category23default_error_conditionEi,@function
_ZNK6thrust6system14error_category23default_error_conditionEi: # @_ZNK6thrust6system14error_category23default_error_conditionEi
	.cfi_startproc
# %bb.0:
	movl	%esi, %eax
	movq	%rdi, %rdx
	retq
.Lfunc_end41:
	.size	_ZNK6thrust6system14error_category23default_error_conditionEi, .Lfunc_end41-_ZNK6thrust6system14error_category23default_error_conditionEi
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system15system_categoryEv,"axG",@progbits,_ZN6thrust6system15system_categoryEv,comdat
	.weak	_ZN6thrust6system15system_categoryEv # -- Begin function _ZN6thrust6system15system_categoryEv
	.type	_ZN6thrust6system15system_categoryEv,@function
_ZN6thrust6system15system_categoryEv:   # @_ZN6thrust6system15system_categoryEv
	.cfi_startproc
# %bb.0:
	movb	_ZGVZN6thrust6system15system_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB42_1
.LBB42_4:
	movl	$_ZZN6thrust6system15system_categoryEvE6result, %eax
	retq
.LBB42_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB42_3
# %bb.2:
	movq	$_ZTVN6thrust6system6detail21system_error_categoryE+16, _ZZN6thrust6system15system_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system15system_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_release
.LBB42_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB42_4
.Lfunc_end42:
	.size	_ZN6thrust6system15system_categoryEv, .Lfunc_end42-_ZN6thrust6system15system_categoryEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system6detail21system_error_categoryD0Ev,"axG",@progbits,_ZN6thrust6system6detail21system_error_categoryD0Ev,comdat
	.weak	_ZN6thrust6system6detail21system_error_categoryD0Ev # -- Begin function _ZN6thrust6system6detail21system_error_categoryD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system6detail21system_error_categoryD0Ev,@function
_ZN6thrust6system6detail21system_error_categoryD0Ev: # @_ZN6thrust6system6detail21system_error_categoryD0Ev
	.cfi_startproc
# %bb.0:
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end43:
	.size	_ZN6thrust6system6detail21system_error_categoryD0Ev, .Lfunc_end43-_ZN6thrust6system6detail21system_error_categoryD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail21system_error_category4nameEv,"axG",@progbits,_ZNK6thrust6system6detail21system_error_category4nameEv,comdat
	.weak	_ZNK6thrust6system6detail21system_error_category4nameEv # -- Begin function _ZNK6thrust6system6detail21system_error_category4nameEv
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail21system_error_category4nameEv,@function
_ZNK6thrust6system6detail21system_error_category4nameEv: # @_ZNK6thrust6system6detail21system_error_category4nameEv
	.cfi_startproc
# %bb.0:
	movl	$.L.str.16, %eax
	retq
.Lfunc_end44:
	.size	_ZNK6thrust6system6detail21system_error_category4nameEv, .Lfunc_end44-_ZNK6thrust6system6detail21system_error_category4nameEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail21system_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi,comdat
	.weak	_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi # -- Begin function _ZNK6thrust6system6detail21system_error_category23default_error_conditionEi
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi,@function
_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi: # @_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movl	%esi, %ebx
	leal	-9901(%rbx), %eax
	cmpl	$78, %eax
	ja	.LBB45_81
# %bb.1:
	jmpq	*.LJTI45_0(,%rax,8)
.LBB45_2:
	movl	$9901, %edi                     # imm = 0x26AD
	jmp	.LBB45_3
.LBB45_77:
	movl	$9979, %edi                     # imm = 0x26FB
	jmp	.LBB45_3
.LBB45_33:
	movl	$9961, %edi                     # imm = 0x26E9
	jmp	.LBB45_3
.LBB45_50:
	movl	$9968, %edi                     # imm = 0x26F0
	jmp	.LBB45_3
.LBB45_67:
	movl	$9974, %edi                     # imm = 0x26F6
	jmp	.LBB45_3
.LBB45_75:
	movl	$9977, %edi                     # imm = 0x26F9
	jmp	.LBB45_3
.LBB45_28:
	movl	$9945, %edi                     # imm = 0x26D9
	jmp	.LBB45_3
.LBB45_19:
	movl	$9952, %edi                     # imm = 0x26E0
	jmp	.LBB45_3
.LBB45_29:
	movl	$9958, %edi                     # imm = 0x26E6
	jmp	.LBB45_3
.LBB45_22:
	movl	$9955, %edi                     # imm = 0x26E3
	jmp	.LBB45_3
.LBB45_17:
	movl	$9951, %edi                     # imm = 0x26DF
	jmp	.LBB45_3
.LBB45_66:
	movl	$9933, %edi                     # imm = 0x26CD
	jmp	.LBB45_3
.LBB45_80:
	movl	$9941, %edi                     # imm = 0x26D5
	jmp	.LBB45_3
.LBB45_59:
	movl	$9928, %edi                     # imm = 0x26C8
	jmp	.LBB45_3
.LBB45_79:
	movl	$9940, %edi                     # imm = 0x26D4
	jmp	.LBB45_3
.LBB45_74:
	movl	$9938, %edi                     # imm = 0x26D2
	jmp	.LBB45_3
.LBB45_58:
	movl	$9927, %edi                     # imm = 0x26C7
	jmp	.LBB45_3
.LBB45_45:
	movl	$9921, %edi                     # imm = 0x26C1
	jmp	.LBB45_3
.LBB45_68:
	movl	$9975, %edi                     # imm = 0x26F7
	jmp	.LBB45_3
.LBB45_7:
	movl	$9946, %edi                     # imm = 0x26DA
	jmp	.LBB45_3
.LBB45_39:
	movl	$9917, %edi                     # imm = 0x26BD
	jmp	.LBB45_3
.LBB45_48:
	movl	$9966, %edi                     # imm = 0x26EE
	jmp	.LBB45_3
.LBB45_71:
	movl	$9934, %edi                     # imm = 0x26CE
	jmp	.LBB45_3
.LBB45_13:
	movl	$9906, %edi                     # imm = 0x26B2
	jmp	.LBB45_3
.LBB45_43:
	movl	$9919, %edi                     # imm = 0x26BF
	jmp	.LBB45_3
.LBB45_47:
	movl	$9922, %edi                     # imm = 0x26C2
	jmp	.LBB45_3
.LBB45_25:
	movl	$9942, %edi                     # imm = 0x26D6
	jmp	.LBB45_3
.LBB45_57:
	movl	$9926, %edi                     # imm = 0x26C6
	jmp	.LBB45_3
.LBB45_61:
	movl	$9929, %edi                     # imm = 0x26C9
	jmp	.LBB45_3
.LBB45_4:
	movl	$9902, %edi                     # imm = 0x26AE
	jmp	.LBB45_3
.LBB45_54:
	movl	$9924, %edi                     # imm = 0x26C4
	jmp	.LBB45_3
.LBB45_18:
	movl	$9910, %edi                     # imm = 0x26B6
	jmp	.LBB45_3
.LBB45_56:
	movl	$9971, %edi                     # imm = 0x26F3
	jmp	.LBB45_3
.LBB45_5:
	movl	$9903, %edi                     # imm = 0x26AF
	jmp	.LBB45_3
.LBB45_11:
	movl	$9905, %edi                     # imm = 0x26B1
	jmp	.LBB45_3
.LBB45_36:
	movl	$9914, %edi                     # imm = 0x26BA
	jmp	.LBB45_3
.LBB45_62:
	movl	$9930, %edi                     # imm = 0x26CA
	jmp	.LBB45_3
.LBB45_65:
	movl	$9932, %edi                     # imm = 0x26CC
	jmp	.LBB45_3
.LBB45_15:
	movl	$9908, %edi                     # imm = 0x26B4
	jmp	.LBB45_3
.LBB45_6:
	movl	$9904, %edi                     # imm = 0x26B0
	jmp	.LBB45_3
.LBB45_26:
	movl	$9911, %edi                     # imm = 0x26B7
	jmp	.LBB45_3
.LBB45_31:
	movl	$9943, %edi                     # imm = 0x26D7
	jmp	.LBB45_3
.LBB45_53:
	movl	$9923, %edi                     # imm = 0x26C3
	jmp	.LBB45_3
.LBB45_16:
	movl	$9909, %edi                     # imm = 0x26B5
	jmp	.LBB45_3
.LBB45_8:
	movl	$9947, %edi                     # imm = 0x26DB
	jmp	.LBB45_3
.LBB45_12:
	movl	$9950, %edi                     # imm = 0x26DE
	jmp	.LBB45_3
.LBB45_14:
	movl	$9907, %edi                     # imm = 0x26B3
	jmp	.LBB45_3
.LBB45_44:
	movl	$9920, %edi                     # imm = 0x26C0
	jmp	.LBB45_3
.LBB45_69:
	movl	$9976, %edi                     # imm = 0x26F8
	jmp	.LBB45_3
.LBB45_9:
	movl	$9948, %edi                     # imm = 0x26DC
	jmp	.LBB45_3
.LBB45_78:
	movl	$9939, %edi                     # imm = 0x26D3
	jmp	.LBB45_3
.LBB45_35:
	movl	$9913, %edi                     # imm = 0x26B9
	jmp	.LBB45_3
.LBB45_23:
	movl	$9956, %edi                     # imm = 0x26E4
	jmp	.LBB45_3
.LBB45_55:
	movl	$9925, %edi                     # imm = 0x26C5
	jmp	.LBB45_3
.LBB45_63:
	movl	$9931, %edi                     # imm = 0x26CB
	jmp	.LBB45_3
.LBB45_27:
	movl	$9912, %edi                     # imm = 0x26B8
	jmp	.LBB45_3
.LBB45_72:
	movl	$9935, %edi                     # imm = 0x26CF
	jmp	.LBB45_3
.LBB45_37:
	movl	$9915, %edi                     # imm = 0x26BB
	jmp	.LBB45_3
.LBB45_38:
	movl	$9916, %edi                     # imm = 0x26BC
	jmp	.LBB45_3
.LBB45_24:
	movl	$9957, %edi                     # imm = 0x26E5
	jmp	.LBB45_3
.LBB45_70:
	movl	$9944, %edi                     # imm = 0x26D8
	jmp	.LBB45_3
.LBB45_41:
	movl	$9918, %edi                     # imm = 0x26BE
	jmp	.LBB45_3
.LBB45_42:
	movl	$9964, %edi                     # imm = 0x26EC
	jmp	.LBB45_3
.LBB45_46:
	movl	$9965, %edi                     # imm = 0x26ED
	jmp	.LBB45_3
.LBB45_32:
	movl	$9960, %edi                     # imm = 0x26E8
	jmp	.LBB45_3
.LBB45_64:
	movl	$9973, %edi                     # imm = 0x26F5
	jmp	.LBB45_3
.LBB45_30:
	movl	$9959, %edi                     # imm = 0x26E7
	jmp	.LBB45_3
.LBB45_49:
	movl	$9967, %edi                     # imm = 0x26EF
	jmp	.LBB45_3
.LBB45_21:
	movl	$9954, %edi                     # imm = 0x26E2
	jmp	.LBB45_3
.LBB45_73:
	movl	$9936, %edi                     # imm = 0x26D0
	jmp	.LBB45_3
.LBB45_51:
	movl	$9969, %edi                     # imm = 0x26F1
	jmp	.LBB45_3
.LBB45_10:
	movl	$9949, %edi                     # imm = 0x26DD
	jmp	.LBB45_3
.LBB45_34:
	movl	$9962, %edi                     # imm = 0x26EA
	jmp	.LBB45_3
.LBB45_52:
	movl	$9970, %edi                     # imm = 0x26F2
	jmp	.LBB45_3
.LBB45_20:
	movl	$9953, %edi                     # imm = 0x26E1
	jmp	.LBB45_3
.LBB45_40:
	movl	$9963, %edi                     # imm = 0x26EB
	jmp	.LBB45_3
.LBB45_60:
	movl	$9972, %edi                     # imm = 0x26F4
	jmp	.LBB45_3
.LBB45_76:
	movl	$9978, %edi                     # imm = 0x26FA
.LBB45_3:
	callq	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE
	movl	%eax, %ebx
.LBB45_82:
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB45_81:
	.cfi_def_cfa_offset 16
	callq	_ZN6thrust6system15system_categoryEv
	movq	%rax, %rdx
	jmp	.LBB45_82
.Lfunc_end45:
	.size	_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi, .Lfunc_end45-_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi
	.cfi_endproc
	.section	.rodata._ZNK6thrust6system6detail21system_error_category23default_error_conditionEi,"aG",@progbits,_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi,comdat
	.p2align	3, 0x0
.LJTI45_0:
	.quad	.LBB45_2
	.quad	.LBB45_4
	.quad	.LBB45_5
	.quad	.LBB45_6
	.quad	.LBB45_11
	.quad	.LBB45_13
	.quad	.LBB45_14
	.quad	.LBB45_15
	.quad	.LBB45_16
	.quad	.LBB45_18
	.quad	.LBB45_26
	.quad	.LBB45_27
	.quad	.LBB45_35
	.quad	.LBB45_36
	.quad	.LBB45_37
	.quad	.LBB45_38
	.quad	.LBB45_39
	.quad	.LBB45_41
	.quad	.LBB45_43
	.quad	.LBB45_44
	.quad	.LBB45_45
	.quad	.LBB45_47
	.quad	.LBB45_53
	.quad	.LBB45_54
	.quad	.LBB45_55
	.quad	.LBB45_57
	.quad	.LBB45_58
	.quad	.LBB45_59
	.quad	.LBB45_61
	.quad	.LBB45_62
	.quad	.LBB45_63
	.quad	.LBB45_65
	.quad	.LBB45_66
	.quad	.LBB45_71
	.quad	.LBB45_72
	.quad	.LBB45_73
	.quad	.LBB45_81
	.quad	.LBB45_74
	.quad	.LBB45_78
	.quad	.LBB45_79
	.quad	.LBB45_80
	.quad	.LBB45_25
	.quad	.LBB45_31
	.quad	.LBB45_70
	.quad	.LBB45_28
	.quad	.LBB45_7
	.quad	.LBB45_8
	.quad	.LBB45_9
	.quad	.LBB45_10
	.quad	.LBB45_12
	.quad	.LBB45_17
	.quad	.LBB45_19
	.quad	.LBB45_20
	.quad	.LBB45_21
	.quad	.LBB45_22
	.quad	.LBB45_23
	.quad	.LBB45_24
	.quad	.LBB45_29
	.quad	.LBB45_30
	.quad	.LBB45_32
	.quad	.LBB45_33
	.quad	.LBB45_34
	.quad	.LBB45_40
	.quad	.LBB45_42
	.quad	.LBB45_46
	.quad	.LBB45_48
	.quad	.LBB45_49
	.quad	.LBB45_50
	.quad	.LBB45_51
	.quad	.LBB45_52
	.quad	.LBB45_56
	.quad	.LBB45_60
	.quad	.LBB45_64
	.quad	.LBB45_67
	.quad	.LBB45_68
	.quad	.LBB45_69
	.quad	.LBB45_75
	.quad	.LBB45_76
	.quad	.LBB45_77
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei,comdat
	.weak	_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei # -- Begin function _ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei,@function
_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei: # @_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei
	.cfi_startproc
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %rbp, -16
	movl	%edx, %ebp
	movq	%rdi, %rbx
	movb	_ZGVZN6thrust6system16generic_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB46_1
.LBB46_3:                               # %_ZN6thrust6system16generic_categoryEv.exit
	movq	_ZZN6thrust6system16generic_categoryEvE6result(%rip), %rax
	movl	$_ZZN6thrust6system16generic_categoryEvE6result, %esi
	movq	%rbx, %rdi
	movl	%ebp, %edx
	callq	*48(%rax)
	movq	%rbx, %rax
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB46_1:
	.cfi_def_cfa_offset 32
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB46_3
# %bb.2:
	movq	$_ZTVN6thrust6system6detail22generic_error_categoryE+16, _ZZN6thrust6system16generic_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system16generic_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_release
	jmp	.LBB46_3
.Lfunc_end46:
	.size	_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei, .Lfunc_end46-_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE,"axG",@progbits,_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE,comdat
	.weak	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE # -- Begin function _ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE
	.type	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE,@function
_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE: # @_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movl	%edi, %ebx
	movb	_ZGVZN6thrust6system16generic_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB47_1
.LBB47_3:                               # %_ZN6thrust6system16generic_categoryEv.exit
	movl	$_ZZN6thrust6system16generic_categoryEvE6result, %edx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB47_1:
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB47_3
# %bb.2:
	movq	$_ZTVN6thrust6system6detail22generic_error_categoryE+16, _ZZN6thrust6system16generic_categoryEvE6result(%rip)
	movl	$_ZN6thrust6system14error_categoryD2Ev, %edi
	movl	$_ZZN6thrust6system16generic_categoryEvE6result, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_release
	jmp	.LBB47_3
.Lfunc_end47:
	.size	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE, .Lfunc_end47-_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system6detail22generic_error_categoryD0Ev,"axG",@progbits,_ZN6thrust6system6detail22generic_error_categoryD0Ev,comdat
	.weak	_ZN6thrust6system6detail22generic_error_categoryD0Ev # -- Begin function _ZN6thrust6system6detail22generic_error_categoryD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system6detail22generic_error_categoryD0Ev,@function
_ZN6thrust6system6detail22generic_error_categoryD0Ev: # @_ZN6thrust6system6detail22generic_error_categoryD0Ev
	.cfi_startproc
# %bb.0:
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end48:
	.size	_ZN6thrust6system6detail22generic_error_categoryD0Ev, .Lfunc_end48-_ZN6thrust6system6detail22generic_error_categoryD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail22generic_error_category4nameEv,"axG",@progbits,_ZNK6thrust6system6detail22generic_error_category4nameEv,comdat
	.weak	_ZNK6thrust6system6detail22generic_error_category4nameEv # -- Begin function _ZNK6thrust6system6detail22generic_error_category4nameEv
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail22generic_error_category4nameEv,@function
_ZNK6thrust6system6detail22generic_error_category4nameEv: # @_ZNK6thrust6system6detail22generic_error_category4nameEv
	.cfi_startproc
# %bb.0:
	movl	$.L.str.17, %eax
	retq
.Lfunc_end49:
	.size	_ZNK6thrust6system6detail22generic_error_category4nameEv, .Lfunc_end49-_ZNK6thrust6system6detail22generic_error_category4nameEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,"axG",@progbits,_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,comdat
	.weak	_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei # -- Begin function _ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,@function
_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei: # @_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei
.Lfunc_begin6:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception6
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	.cfi_offset %rbp, -16
	movl	%edx, %ebp
	movq	%rdi, %rbx
	movb	_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11(%rip), %al
	testb	%al, %al
	je	.LBB50_1
.LBB50_4:
	movl	%ebp, %edi
	callq	strerror
	movq	%rax, %r14
	leaq	16(%rbx), %rax
	movq	%rax, (%rbx)
	testq	%r14, %r14
	je	.LBB50_6
# %bb.5:
	movq	%r14, %rdi
	callq	strlen
	movq	%r14, %rdx
	addq	%rax, %rdx
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	jmp	.LBB50_7
.LBB50_6:
	movq	_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11(%rip), %rsi
	movq	_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11+8(%rip), %rdx
	addq	%rsi, %rdx
	movq	%rbx, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag
.LBB50_7:
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB50_1:
	.cfi_def_cfa_offset 32
	movl	$_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB50_4
# %bb.2:
	movq	$_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11+16, _ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11(%rip)
.Ltmp371:
	movl	$_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	movl	$.L.str.18, %esi
	movl	$.L.str.18+13, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
.Ltmp372:
# %bb.3:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.exit
	movl	$_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev, %edi
	movl	$_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %esi
	movl	$__dso_handle, %edx
	callq	__cxa_atexit
	movl	$_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	callq	__cxa_guard_release
	jmp	.LBB50_4
.LBB50_8:                               # %.critedge17
.Ltmp373:
	movq	%rax, %rbx
	movl	$_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	callq	__cxa_guard_abort
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end50:
	.size	_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei, .Lfunc_end50-_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei
	.cfi_endproc
	.section	.gcc_except_table._ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,comdat
	.p2align	2, 0x0
GCC_except_table50:
.Lexception6:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end6-.Lcst_begin6
.Lcst_begin6:
	.uleb128 .Lfunc_begin6-.Lfunc_begin6    # >> Call Site 1 <<
	.uleb128 .Ltmp371-.Lfunc_begin6         #   Call between .Lfunc_begin6 and .Ltmp371
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp371-.Lfunc_begin6         # >> Call Site 2 <<
	.uleb128 .Ltmp372-.Ltmp371              #   Call between .Ltmp371 and .Ltmp372
	.uleb128 .Ltmp373-.Lfunc_begin6         #     jumps to .Ltmp373
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp372-.Lfunc_begin6         # >> Call Site 3 <<
	.uleb128 .Lfunc_end50-.Ltmp372          #   Call between .Ltmp372 and .Lfunc_end50
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end6:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag,"axG",@progbits,_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag,comdat
	.weak	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag # -- Begin function _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag
	.p2align	1, 0x90
	.type	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag,@function
_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag: # @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r12
	.cfi_def_cfa_offset 32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	pushq	%rax
	.cfi_def_cfa_offset 48
	.cfi_offset %rbx, -40
	.cfi_offset %r12, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movq	%rdx, %r14
	movq	%rsi, %r15
	movq	%rdi, %rbx
	subq	%rsi, %r14
	movq	%r14, (%rsp)
	cmpq	$15, %r14
	jbe	.LBB51_1
# %bb.2:
	movq	%rsp, %r12
	movq	%rbx, %rdi
	movq	%r12, %rsi
	xorl	%edx, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm
	movq	%rax, (%rbx)
	movq	(%r12), %rcx
	movq	%rcx, 16(%rbx)
	jmp	.LBB51_3
.LBB51_1:                               # %._crit_edge
	movq	(%rbx), %rax
.LBB51_3:
	testq	%r14, %r14
	je	.LBB51_7
# %bb.4:
	cmpq	$1, %r14
	jne	.LBB51_6
# %bb.5:
	movb	(%r15), %cl
	movb	%cl, (%rax)
	jmp	.LBB51_7
.LBB51_6:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%r14, %rdx
	callq	memcpy@PLT
.LBB51_7:                               # %_ZZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tagEN6_GuardD2Ev.exit
	movq	(%rsp), %rax
	movq	%rax, 8(%rbx)
	movq	(%rbx), %rcx
	movb	$0, (%rcx,%rax)
	addq	$8, %rsp
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end51:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag, .Lfunc_end51-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag,"axG",@progbits,_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag,comdat
	.weak	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag # -- Begin function _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	.p2align	1, 0x90
	.type	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag,@function
_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag: # @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r12
	.cfi_def_cfa_offset 32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	pushq	%rax
	.cfi_def_cfa_offset 48
	.cfi_offset %rbx, -40
	.cfi_offset %r12, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movq	%rdx, %r14
	movq	%rsi, %r15
	movq	%rdi, %rbx
	subq	%rsi, %r14
	movq	%r14, (%rsp)
	cmpq	$15, %r14
	jbe	.LBB52_1
# %bb.2:
	movq	%rsp, %r12
	movq	%rbx, %rdi
	movq	%r12, %rsi
	xorl	%edx, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm
	movq	%rax, (%rbx)
	movq	(%r12), %rcx
	movq	%rcx, 16(%rbx)
	jmp	.LBB52_3
.LBB52_1:                               # %._crit_edge
	movq	(%rbx), %rax
.LBB52_3:
	testq	%r14, %r14
	je	.LBB52_7
# %bb.4:
	cmpq	$1, %r14
	jne	.LBB52_6
# %bb.5:
	movb	(%r15), %cl
	movb	%cl, (%rax)
	jmp	.LBB52_7
.LBB52_6:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%r14, %rdx
	callq	memcpy@PLT
.LBB52_7:                               # %_ZZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tagEN6_GuardD2Ev.exit
	movq	(%rsp), %rax
	movq	%rax, 8(%rbx)
	movq	(%rbx), %rcx
	movb	$0, (%rcx,%rax)
	addq	$8, %rsp
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end52:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag, .Lfunc_end52-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system6detail9bad_allocD0Ev,"axG",@progbits,_ZN6thrust6system6detail9bad_allocD0Ev,comdat
	.weak	_ZN6thrust6system6detail9bad_allocD0Ev # -- Begin function _ZN6thrust6system6detail9bad_allocD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system6detail9bad_allocD0Ev,@function
_ZN6thrust6system6detail9bad_allocD0Ev: # @_ZN6thrust6system6detail9bad_allocD0Ev
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	$_ZTVN6thrust6system6detail9bad_allocE+16, (%rdi)
	movq	8(%rdi), %rdi
	leaq	24(%rbx), %rax
	cmpq	%rax, %rdi
	je	.LBB53_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i.i
	callq	_ZdlPv
.LBB53_2:                               # %_ZN6thrust6system6detail9bad_allocD2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt9bad_allocD2Ev
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end53:
	.size	_ZN6thrust6system6detail9bad_allocD0Ev, .Lfunc_end53-_ZN6thrust6system6detail9bad_allocD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system6detail9bad_alloc4whatEv,"axG",@progbits,_ZNK6thrust6system6detail9bad_alloc4whatEv,comdat
	.weak	_ZNK6thrust6system6detail9bad_alloc4whatEv # -- Begin function _ZNK6thrust6system6detail9bad_alloc4whatEv
	.p2align	1, 0x90
	.type	_ZNK6thrust6system6detail9bad_alloc4whatEv,@function
_ZNK6thrust6system6detail9bad_alloc4whatEv: # @_ZNK6thrust6system6detail9bad_alloc4whatEv
	.cfi_startproc
# %bb.0:
	movq	8(%rdi), %rax
	retq
.Lfunc_end54:
	.size	_ZNK6thrust6system6detail9bad_alloc4whatEv, .Lfunc_end54-_ZNK6thrust6system6detail9bad_alloc4whatEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc,"axG",@progbits,_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc,comdat
	.weak	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc # -- Begin function _ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
	.p2align	1, 0x90
	.type	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc,@function
_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc: # @_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
	.cfi_startproc
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	.cfi_offset %rbp, -16
	movq	%rdx, %rbx
	movl	%esi, %ebp
	movq	%rdi, %r14
	movq	%rcx, %rsi
	callq	_ZNSt13runtime_errorC2EPKc
	movq	$_ZTVN6thrust6system12system_errorE+16, (%r14)
	movl	%ebp, 16(%r14)
	movq	%rbx, 24(%r14)
	leaq	48(%r14), %rax
	movq	%rax, 32(%r14)
	movq	$0, 40(%r14)
	movb	$0, 48(%r14)
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end55:
	.size	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc, .Lfunc_end55-_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system12system_errorD2Ev,"axG",@progbits,_ZN6thrust6system12system_errorD2Ev,comdat
	.weak	_ZN6thrust6system12system_errorD2Ev # -- Begin function _ZN6thrust6system12system_errorD2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system12system_errorD2Ev,@function
_ZN6thrust6system12system_errorD2Ev:    # @_ZN6thrust6system12system_errorD2Ev
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	$_ZTVN6thrust6system12system_errorE+16, (%rdi)
	movq	32(%rdi), %rdi
	leaq	48(%rbx), %rax
	cmpq	%rax, %rdi
	je	.LBB56_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB56_2:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt13runtime_errorD2Ev        # TAILCALL
.Lfunc_end56:
	.size	_ZN6thrust6system12system_errorD2Ev, .Lfunc_end56-_ZN6thrust6system12system_errorD2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6system12system_errorD0Ev,"axG",@progbits,_ZN6thrust6system12system_errorD0Ev,comdat
	.weak	_ZN6thrust6system12system_errorD0Ev # -- Begin function _ZN6thrust6system12system_errorD0Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6system12system_errorD0Ev,@function
_ZN6thrust6system12system_errorD0Ev:    # @_ZN6thrust6system12system_errorD0Ev
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	$_ZTVN6thrust6system12system_errorE+16, (%rdi)
	movq	32(%rdi), %rdi
	leaq	48(%rbx), %rax
	cmpq	%rax, %rdi
	je	.LBB57_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i.i
	callq	_ZdlPv
.LBB57_2:                               # %_ZN6thrust6system12system_errorD2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorD2Ev
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end57:
	.size	_ZN6thrust6system12system_errorD0Ev, .Lfunc_end57-_ZN6thrust6system12system_errorD0Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK6thrust6system12system_error4whatEv,"axG",@progbits,_ZNK6thrust6system12system_error4whatEv,comdat
	.weak	_ZNK6thrust6system12system_error4whatEv # -- Begin function _ZNK6thrust6system12system_error4whatEv
	.p2align	1, 0x90
	.type	_ZNK6thrust6system12system_error4whatEv,@function
_ZNK6thrust6system12system_error4whatEv: # @_ZNK6thrust6system12system_error4whatEv
.Lfunc_begin7:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception7
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r12
	.cfi_def_cfa_offset 32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	subq	$40, %rsp
	.cfi_def_cfa_offset 80
	.cfi_offset %rbx, -40
	.cfi_offset %r12, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	32(%rdi), %r14
	cmpq	$0, 40(%rdi)
	je	.LBB58_3
.LBB58_1:
	movq	(%r14), %rbx
.LBB58_2:
	movq	%rbx, %rax
	addq	$40, %rsp
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.LBB58_3:
	.cfi_def_cfa_offset 80
	movq	%rdi, %rbx
	callq	_ZNKSt13runtime_error4whatEv
	movq	%rax, %r15
	movq	40(%rbx), %r12
	movq	%rax, %rdi
	callq	strlen
.Ltmp374:
	movq	%r14, %rdi
	xorl	%esi, %esi
	movq	%r12, %rdx
	movq	%r15, %rcx
	movq	%rax, %r8
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm
.Ltmp375:
# %bb.4:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEPKc.exit
	movl	16(%rbx), %edx
	testl	%edx, %edx
	je	.LBB58_1
# %bb.5:
	cmpq	$0, 40(%rbx)
	je	.LBB58_8
# %bb.6:
.Ltmp376:
	movl	$.L.str.21, %esi
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp377:
# %bb.7:                                # %._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit_crit_edge
	movl	16(%rbx), %edx
.LBB58_8:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit
	movq	24(%rbx), %rsi
	movq	(%rsi), %rax
.Ltmp379:
	leaq	8(%rsp), %rdi
	callq	*48(%rax)
.Ltmp380:
# %bb.9:                                # %_ZNK6thrust6system10error_code7messageB5cxx11Ev.exit
	movq	8(%rsp), %rsi
	movq	16(%rsp), %rdx
.Ltmp382:
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm
.Ltmp383:
# %bb.10:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_.exit
	leaq	24(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB58_1
# %bb.11:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
	jmp	.LBB58_1
.LBB58_12:
.Ltmp384:
	movq	%rax, %r14
	leaq	24(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB58_17
# %bb.13:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i4
	callq	_ZdlPv
	jmp	.LBB58_17
.LBB58_14:
.Ltmp381:
	jmp	.LBB58_16
.LBB58_15:
.Ltmp378:
.LBB58_16:
	movq	%rax, %r14
.LBB58_17:
	movq	%r14, %rdi
	callq	__cxa_begin_catch
	movq	%rbx, %rdi
	callq	_ZNKSt13runtime_error4whatEv
	movq	%rax, %rbx
.Ltmp385:
	callq	__cxa_end_catch
.Ltmp386:
	jmp	.LBB58_2
.LBB58_18:
.Ltmp387:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end58:
	.size	_ZNK6thrust6system12system_error4whatEv, .Lfunc_end58-_ZNK6thrust6system12system_error4whatEv
	.cfi_endproc
	.section	.gcc_except_table._ZNK6thrust6system12system_error4whatEv,"aG",@progbits,_ZNK6thrust6system12system_error4whatEv,comdat
	.p2align	2, 0x0
GCC_except_table58:
.Lexception7:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase2-.Lttbaseref2
.Lttbaseref2:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end7-.Lcst_begin7
.Lcst_begin7:
	.uleb128 .Ltmp374-.Lfunc_begin7         # >> Call Site 1 <<
	.uleb128 .Ltmp377-.Ltmp374              #   Call between .Ltmp374 and .Ltmp377
	.uleb128 .Ltmp378-.Lfunc_begin7         #     jumps to .Ltmp378
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp379-.Lfunc_begin7         # >> Call Site 2 <<
	.uleb128 .Ltmp380-.Ltmp379              #   Call between .Ltmp379 and .Ltmp380
	.uleb128 .Ltmp381-.Lfunc_begin7         #     jumps to .Ltmp381
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp382-.Lfunc_begin7         # >> Call Site 3 <<
	.uleb128 .Ltmp383-.Ltmp382              #   Call between .Ltmp382 and .Ltmp383
	.uleb128 .Ltmp384-.Lfunc_begin7         #     jumps to .Ltmp384
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp383-.Lfunc_begin7         # >> Call Site 4 <<
	.uleb128 .Ltmp385-.Ltmp383              #   Call between .Ltmp383 and .Ltmp385
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp385-.Lfunc_begin7         # >> Call Site 5 <<
	.uleb128 .Ltmp386-.Ltmp385              #   Call between .Ltmp385 and .Ltmp386
	.uleb128 .Ltmp387-.Lfunc_begin7         #     jumps to .Ltmp387
	.byte	1                               #   On action: 1
.Lcst_end7:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase2:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
.Lfunc_begin8:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception8
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$24, %rsp
	.cfi_def_cfa_offset 80
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movl	%edx, %edi
	movq	%rsi, 16(%rsp)                  # 8-byte Spill
	movl	$4294967040, %r14d              # imm = 0xFFFFFF00
	movq	%rcx, 8(%rsp)                   # 8-byte Spill
	leaq	(%rcx,%r14), %rsi
	decq	%rsi
	shrq	$8, %rsi
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rsi, %rax
	mulq	%rdx
	cmpq	$16777215, %rsi                 # imm = 0xFFFFFF
	jb	.LBB59_5
# %bb.1:                                # %.lr.ph.i.preheader
	movq	%rdx, %r15
	shrq	$16, %r15
	xorl	%r12d, %r12d
	leaq	512(%r14), %r13
	movzbl	%dil, %eax
	movl	%eax, 4(%rsp)                   # 4-byte Spill
	movabsq	$-4294967040, %rbp              # imm = 0xFFFFFFFF00000100
	movq	8(%rsp), %rbx                   # 8-byte Reload
.LBB59_2:                               # %.lr.ph.i
                                        # =>This Inner Loop Header: Depth=1
	cmpq	%r14, %rbx
	movl	$4294967040, %eax               # imm = 0xFFFFFF00
	cmovbq	%rbx, %rax
	addq	$255, %rax
	shrq	$8, %rax
	leaq	(%r14,%rax), %rdi
	addq	$256, %rdi                      # imm = 0x100
	movl	$1, %esi
	movq	%r13, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB59_4
# %bb.3:                                #   in Loop: Header=BB59_2 Depth=1
	movq	16(%rsp), %rdi                  # 8-byte Reload
	movl	4(%rsp), %esi                   # 4-byte Reload
	movq	8(%rsp), %rdx                   # 8-byte Reload
	movq	%r12, %rcx
	callq	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
.LBB59_4:                               #   in Loop: Header=BB59_2 Depth=1
	addq	%r14, %r12
	addq	%rbp, %rbx
	decq	%r15
	jne	.LBB59_2
.LBB59_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB59_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB59_12
# %bb.15:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit8
	addq	$24, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB59_6:
	.cfi_def_cfa_offset 80
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp388:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp389:
# %bb.7:
.Ltmp390:
	movl	$.L.str.25, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp391:
	jmp	.LBB59_8
.LBB59_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp393:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp394:
# %bb.13:
.Ltmp395:
	movl	$.L.str.26, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp396:
.LBB59_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB59_14:
.Ltmp397:
	jmp	.LBB59_10
.LBB59_9:
.Ltmp392:
.LBB59_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end59:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m, .Lfunc_end59-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.p2align	2, 0x0
GCC_except_table59:
.Lexception8:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end8-.Lcst_begin8
.Lcst_begin8:
	.uleb128 .Lfunc_begin8-.Lfunc_begin8    # >> Call Site 1 <<
	.uleb128 .Ltmp388-.Lfunc_begin8         #   Call between .Lfunc_begin8 and .Ltmp388
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp388-.Lfunc_begin8         # >> Call Site 2 <<
	.uleb128 .Ltmp391-.Ltmp388              #   Call between .Ltmp388 and .Ltmp391
	.uleb128 .Ltmp392-.Lfunc_begin8         #     jumps to .Ltmp392
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp391-.Lfunc_begin8         # >> Call Site 3 <<
	.uleb128 .Ltmp393-.Ltmp391              #   Call between .Ltmp391 and .Ltmp393
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp393-.Lfunc_begin8         # >> Call Site 4 <<
	.uleb128 .Ltmp396-.Ltmp393              #   Call between .Ltmp393 and .Ltmp396
	.uleb128 .Ltmp397-.Lfunc_begin8         #     jumps to .Ltmp397
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp396-.Lfunc_begin8         # >> Call Site 5 <<
	.uleb128 .Lfunc_end59-.Ltmp396          #   Call between .Ltmp396 and .Lfunc_end59
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end8:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	64(%rsp), %rax
	movq	%rdi, (%rax)
	movb	%sil, 8(%rax)
	leaq	24(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	16(%rsp), %rdx
	movq	%rcx, (%rdx)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rsi, 8(%rbx)
	movq	%rdx, 16(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end60:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_, .Lfunc_end60-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv,"axG",@progbits,_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv,comdat
	.weak	_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv # -- Begin function _ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv,@function
_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv: # @_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv
	.cfi_startproc
# %bb.0:
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.LBB61_2
# %bb.1:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	(%rdi), %rax
	movq	8(%rdi), %rsi
	movq	8(%rax), %rdi
	movl	$1, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
.LBB61_2:
	retq
.Lfunc_end61:
	.size	_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv, .Lfunc_end61-_ZN6thrust6detail18contiguous_storageIhNS_16device_allocatorIhEEE10deallocateEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em,"axG",@progbits,_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em,comdat
	.weak	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em # -- Begin function _ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em,@function
_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em: # @_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em
.Lfunc_begin9:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception9
# %bb.0:
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %r14
	movq	%rdi, %rbx
	callq	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	movq	%rax, (%rbx)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	movq	$0, 24(%rbx)
.Ltmp398:
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm
.Ltmp399:
# %bb.1:
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	retq
.LBB62_3:
	.cfi_def_cfa_offset 32
.Ltmp400:
	movq	%rax, %r14
.Ltmp401:
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv
.Ltmp402:
# %bb.4:                                # %_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEED2Ev.exit
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.LBB62_2:
.Ltmp403:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end62:
	.size	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em, .Lfunc_end62-_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em,"aG",@progbits,_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEEC2Em,comdat
	.p2align	2, 0x0
GCC_except_table62:
.Lexception9:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase3-.Lttbaseref3
.Lttbaseref3:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end9-.Lcst_begin9
.Lcst_begin9:
	.uleb128 .Lfunc_begin9-.Lfunc_begin9    # >> Call Site 1 <<
	.uleb128 .Ltmp398-.Lfunc_begin9         #   Call between .Lfunc_begin9 and .Ltmp398
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp398-.Lfunc_begin9         # >> Call Site 2 <<
	.uleb128 .Ltmp399-.Ltmp398              #   Call between .Ltmp398 and .Ltmp399
	.uleb128 .Ltmp400-.Lfunc_begin9         #     jumps to .Ltmp400
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp401-.Lfunc_begin9         # >> Call Site 3 <<
	.uleb128 .Ltmp402-.Ltmp401              #   Call between .Ltmp401 and .Ltmp402
	.uleb128 .Ltmp403-.Lfunc_begin9         #     jumps to .Ltmp403
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp402-.Lfunc_begin9         # >> Call Site 4 <<
	.uleb128 .Lfunc_end62-.Ltmp402          #   Call between .Ltmp402 and .Lfunc_end62
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end9:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase3:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm,"axG",@progbits,_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm,comdat
	.weak	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm # -- Begin function _ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm,@function
_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm: # @_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm
	.cfi_startproc
# %bb.0:
	testq	%rsi, %rsi
	je	.LBB63_2
# %bb.1:                                # %_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE19default_construct_nENS0_15normal_iteratorINS_10device_ptrIS3_EEEEm.exit
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %rbx
	movq	%rdi, %r14
	movq	(%rdi), %rax
	leaq	(,%rsi,8), %rsi
	movq	8(%rax), %rdi
	movl	$8, %edx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	movq	%rax, 8(%r14)
	movq	%rbx, 16(%r14)
	movq	%rbx, 24(%r14)
	leaq	7(%rsp), %rdi
	xorps	%xmm0, %xmm0
	movq	%rax, %rsi
	movq	%rbx, %rdx
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	.cfi_restore %rbx
	.cfi_restore %r14
.LBB63_2:
	retq
.Lfunc_end63:
	.size	_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm, .Lfunc_end63-_ZN6thrust6detail11vector_baseI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE12default_initEm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m
.Lfunc_begin10:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception10
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$24, %rsp
	.cfi_def_cfa_offset 80
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movsd	%xmm0, 16(%rsp)                 # 8-byte Spill
	movq	%rsi, 8(%rsp)                   # 8-byte Spill
	movl	$4294967040, %ebp               # imm = 0xFFFFFF00
	movq	%rdx, (%rsp)                    # 8-byte Spill
	leaq	(%rdx,%rbp), %rcx
	decq	%rcx
	shrq	$8, %rcx
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rcx, %rax
	mulq	%rdx
	cmpq	$16777215, %rcx                 # imm = 0xFFFFFF
	jb	.LBB64_5
# %bb.1:                                # %.lr.ph.i.preheader
	movq	%rdx, %r15
	shrq	$16, %r15
	xorl	%r12d, %r12d
	leaq	512(%rbp), %r13
	movabsq	$-4294967040, %r14              # imm = 0xFFFFFFFF00000100
	movq	(%rsp), %rbx                    # 8-byte Reload
.LBB64_2:                               # %.lr.ph.i
                                        # =>This Inner Loop Header: Depth=1
	cmpq	%rbp, %rbx
	movl	$4294967040, %eax               # imm = 0xFFFFFF00
	cmovbq	%rbx, %rax
	addq	$255, %rax
	shrq	$8, %rax
	leaq	(%rax,%rbp), %rdi
	addq	$256, %rdi                      # imm = 0x100
	movl	$1, %esi
	movq	%r13, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB64_4
# %bb.3:                                #   in Loop: Header=BB64_2 Depth=1
	movq	8(%rsp), %rdi                   # 8-byte Reload
	movsd	16(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	movq	(%rsp), %rsi                    # 8-byte Reload
	movq	%r12, %rdx
	callq	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
.LBB64_4:                               #   in Loop: Header=BB64_2 Depth=1
	addq	%rbp, %r12
	addq	%r14, %rbx
	decq	%r15
	jne	.LBB64_2
.LBB64_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB64_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB64_12
# %bb.15:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit8
	addq	$24, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB64_6:
	.cfi_def_cfa_offset 80
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp404:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp405:
# %bb.7:
.Ltmp406:
	movl	$.L.str.25, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp407:
	jmp	.LBB64_8
.LBB64_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp409:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp410:
# %bb.13:
.Ltmp411:
	movl	$.L.str.26, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp412:
.LBB64_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB64_14:
.Ltmp413:
	jmp	.LBB64_10
.LBB64_9:
.Ltmp408:
.LBB64_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end64:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m, .Lfunc_end64-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSA_IS2_EES9_m,comdat
	.p2align	2, 0x0
GCC_except_table64:
.Lexception10:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end10-.Lcst_begin10
.Lcst_begin10:
	.uleb128 .Lfunc_begin10-.Lfunc_begin10  # >> Call Site 1 <<
	.uleb128 .Ltmp404-.Lfunc_begin10        #   Call between .Lfunc_begin10 and .Ltmp404
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp404-.Lfunc_begin10        # >> Call Site 2 <<
	.uleb128 .Ltmp407-.Ltmp404              #   Call between .Ltmp404 and .Ltmp407
	.uleb128 .Ltmp408-.Lfunc_begin10        #     jumps to .Ltmp408
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp407-.Lfunc_begin10        # >> Call Site 3 <<
	.uleb128 .Ltmp409-.Ltmp407              #   Call between .Ltmp407 and .Ltmp409
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp409-.Lfunc_begin10        # >> Call Site 4 <<
	.uleb128 .Ltmp412-.Ltmp409              #   Call between .Ltmp409 and .Ltmp412
	.uleb128 .Ltmp413-.Lfunc_begin10        #     jumps to .Ltmp413
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp412-.Lfunc_begin10        # >> Call Site 5 <<
	.uleb128 .Lfunc_end64-.Ltmp412          #   Call between .Ltmp412 and .Lfunc_end64
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end10:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	64(%rsp), %rax
	movq	%rdi, (%rax)
	movsd	%xmm0, 8(%rax)
	leaq	24(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	16(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end65:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_, .Lfunc_end65-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv,"axG",@progbits,_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv,comdat
	.weak	_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv # -- Begin function _ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv,@function
_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv: # @_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv
	.cfi_startproc
# %bb.0:
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.LBB66_2
# %bb.1:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	(%rdi), %rax
	movq	8(%rdi), %rsi
	shlq	$3, %rdx
	movq	8(%rax), %rdi
	movl	$8, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
.LBB66_2:
	retq
.Lfunc_end66:
	.size	_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv, .Lfunc_end66-_ZN6thrust6detail18contiguous_storageI15HIP_vector_typeIfLj2EENS_16device_allocatorIS3_EEE10deallocateEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em,"axG",@progbits,_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em,comdat
	.weak	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em # -- Begin function _ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em,@function
_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em: # @_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
.Lfunc_begin11:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception11
# %bb.0:
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %r14
	movq	%rdi, %rbx
	callq	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v
	movq	%rax, (%rbx)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	movq	$0, 24(%rbx)
.Ltmp414:
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm
.Ltmp415:
# %bb.1:
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	retq
.LBB67_3:
	.cfi_def_cfa_offset 32
.Ltmp416:
	movq	%rax, %r14
.Ltmp417:
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv
.Ltmp418:
# %bb.4:                                # %_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEED2Ev.exit
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.LBB67_2:
.Ltmp419:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end67:
	.size	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em, .Lfunc_end67-_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em,"aG",@progbits,_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEEC2Em,comdat
	.p2align	2, 0x0
GCC_except_table67:
.Lexception11:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase4-.Lttbaseref4
.Lttbaseref4:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end11-.Lcst_begin11
.Lcst_begin11:
	.uleb128 .Lfunc_begin11-.Lfunc_begin11  # >> Call Site 1 <<
	.uleb128 .Ltmp414-.Lfunc_begin11        #   Call between .Lfunc_begin11 and .Ltmp414
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp414-.Lfunc_begin11        # >> Call Site 2 <<
	.uleb128 .Ltmp415-.Ltmp414              #   Call between .Ltmp414 and .Ltmp415
	.uleb128 .Ltmp416-.Lfunc_begin11        #     jumps to .Ltmp416
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp417-.Lfunc_begin11        # >> Call Site 3 <<
	.uleb128 .Ltmp418-.Ltmp417              #   Call between .Ltmp417 and .Ltmp418
	.uleb128 .Ltmp419-.Lfunc_begin11        #     jumps to .Ltmp419
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp418-.Lfunc_begin11        # >> Call Site 4 <<
	.uleb128 .Lfunc_end67-.Ltmp418          #   Call between .Ltmp418 and .Lfunc_end67
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end11:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase4:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm,"axG",@progbits,_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm,comdat
	.weak	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm # -- Begin function _ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm,@function
_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm: # @_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm
	.cfi_startproc
# %bb.0:
	testq	%rsi, %rsi
	je	.LBB68_2
# %bb.1:                                # %_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE19default_construct_nENS0_15normal_iteratorINS_10device_ptrIfEEEEm.exit
	pushq	%r14
	.cfi_def_cfa_offset 16
	pushq	%rbx
	.cfi_def_cfa_offset 24
	pushq	%rax
	.cfi_def_cfa_offset 32
	.cfi_offset %rbx, -24
	.cfi_offset %r14, -16
	movq	%rsi, %rbx
	movq	%rdi, %r14
	movq	(%rdi), %rax
	leaq	(,%rsi,4), %rsi
	movq	8(%rax), %rdi
	movl	$4, %edx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	movq	%rax, 8(%r14)
	movq	%rbx, 16(%r14)
	movq	%rbx, 24(%r14)
	leaq	7(%rsp), %rdi
	xorps	%xmm0, %xmm0
	movq	%rax, %rsi
	movq	%rbx, %rdx
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	.cfi_restore %rbx
	.cfi_restore %r14
.LBB68_2:
	retq
.Lfunc_end68:
	.size	_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm, .Lfunc_end68-_ZN6thrust6detail11vector_baseIfNS_16device_allocatorIfEEE12default_initEm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
.Lfunc_begin12:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception12
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$24, %rsp
	.cfi_def_cfa_offset 80
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movss	%xmm0, 4(%rsp)                  # 4-byte Spill
	movq	%rsi, 16(%rsp)                  # 8-byte Spill
	movl	$4294967040, %ebp               # imm = 0xFFFFFF00
	movq	%rdx, 8(%rsp)                   # 8-byte Spill
	leaq	(%rdx,%rbp), %rcx
	decq	%rcx
	shrq	$8, %rcx
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rcx, %rax
	mulq	%rdx
	cmpq	$16777215, %rcx                 # imm = 0xFFFFFF
	jb	.LBB69_5
# %bb.1:                                # %.lr.ph.i.preheader
	movq	%rdx, %r15
	shrq	$16, %r15
	xorl	%r12d, %r12d
	leaq	512(%rbp), %r13
	movabsq	$-4294967040, %r14              # imm = 0xFFFFFFFF00000100
	movq	8(%rsp), %rbx                   # 8-byte Reload
.LBB69_2:                               # %.lr.ph.i
                                        # =>This Inner Loop Header: Depth=1
	cmpq	%rbp, %rbx
	movl	$4294967040, %eax               # imm = 0xFFFFFF00
	cmovbq	%rbx, %rax
	addq	$255, %rax
	shrq	$8, %rax
	leaq	(%rax,%rbp), %rdi
	addq	$256, %rdi                      # imm = 0x100
	movl	$1, %esi
	movq	%r13, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB69_4
# %bb.3:                                #   in Loop: Header=BB69_2 Depth=1
	movq	16(%rsp), %rdi                  # 8-byte Reload
	movss	4(%rsp), %xmm0                  # 4-byte Reload
                                        # xmm0 = mem[0],zero,zero,zero
	movq	8(%rsp), %rsi                   # 8-byte Reload
	movq	%r12, %rdx
	callq	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
.LBB69_4:                               #   in Loop: Header=BB69_2 Depth=1
	addq	%rbp, %r12
	addq	%r14, %rbx
	decq	%r15
	jne	.LBB69_2
.LBB69_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB69_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB69_12
# %bb.15:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit8
	addq	$24, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB69_6:
	.cfi_def_cfa_offset 80
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp420:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp421:
# %bb.7:
.Ltmp422:
	movl	$.L.str.25, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp423:
	jmp	.LBB69_8
.LBB69_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp425:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp426:
# %bb.13:
.Ltmp427:
	movl	$.L.str.26, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp428:
.LBB69_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB69_14:
.Ltmp429:
	jmp	.LBB69_10
.LBB69_9:
.Ltmp424:
.LBB69_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end69:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m, .Lfunc_end69-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.p2align	2, 0x0
GCC_except_table69:
.Lexception12:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end12-.Lcst_begin12
.Lcst_begin12:
	.uleb128 .Lfunc_begin12-.Lfunc_begin12  # >> Call Site 1 <<
	.uleb128 .Ltmp420-.Lfunc_begin12        #   Call between .Lfunc_begin12 and .Ltmp420
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp420-.Lfunc_begin12        # >> Call Site 2 <<
	.uleb128 .Ltmp423-.Ltmp420              #   Call between .Ltmp420 and .Ltmp423
	.uleb128 .Ltmp424-.Lfunc_begin12        #     jumps to .Ltmp424
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp423-.Lfunc_begin12        # >> Call Site 3 <<
	.uleb128 .Ltmp425-.Ltmp423              #   Call between .Ltmp423 and .Ltmp425
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp425-.Lfunc_begin12        # >> Call Site 4 <<
	.uleb128 .Ltmp428-.Ltmp425              #   Call between .Ltmp425 and .Ltmp428
	.uleb128 .Ltmp429-.Lfunc_begin12        #     jumps to .Ltmp429
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp428-.Lfunc_begin12        # >> Call Site 5 <<
	.uleb128 .Lfunc_end69-.Ltmp428          #   Call between .Ltmp428 and .Lfunc_end69
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end12:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	64(%rsp), %rax
	movq	%rdi, (%rax)
	movss	%xmm0, 8(%rax)
	leaq	24(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	16(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end70:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_, .Lfunc_end70-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv,"axG",@progbits,_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv,comdat
	.weak	_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv # -- Begin function _ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv,@function
_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv: # @_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv
	.cfi_startproc
# %bb.0:
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.LBB71_2
# %bb.1:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	%rdi, %rbx
	movq	(%rdi), %rax
	movq	8(%rdi), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	xorps	%xmm0, %xmm0
	movups	%xmm0, 8(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
.LBB71_2:
	retq
.Lfunc_end71:
	.size	_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv, .Lfunc_end71-_ZN6thrust6detail18contiguous_storageIfNS_16device_allocatorIfEEE10deallocateEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l
.Lfunc_begin13:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception13
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$40, %rsp
	.cfi_def_cfa_offset 96
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movaps	%xmm0, 16(%rsp)                 # 16-byte Spill
	movq	%rsi, 8(%rsp)                   # 8-byte Spill
	movl	$4294967040, %ebp               # imm = 0xFFFFFF00
	movq	%rdx, (%rsp)                    # 8-byte Spill
	leaq	(%rdx,%rbp), %rcx
	decq	%rcx
	shrq	$8, %rcx
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rcx, %rax
	mulq	%rdx
	cmpq	$16777215, %rcx                 # imm = 0xFFFFFF
	jb	.LBB72_5
# %bb.1:                                # %.lr.ph.i.preheader
	movq	%rdx, %r15
	shrq	$16, %r15
	xorl	%r12d, %r12d
	leaq	512(%rbp), %r13
	movabsq	$-4294967040, %r14              # imm = 0xFFFFFFFF00000100
	movq	(%rsp), %rbx                    # 8-byte Reload
.LBB72_2:                               # %.lr.ph.i
                                        # =>This Inner Loop Header: Depth=1
	cmpq	%rbp, %rbx
	movl	$4294967040, %eax               # imm = 0xFFFFFF00
	cmovbq	%rbx, %rax
	addq	$255, %rax
	shrq	$8, %rax
	leaq	(%rax,%rbp), %rdi
	addq	$256, %rdi                      # imm = 0x100
	movl	$1, %esi
	movq	%r13, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB72_4
# %bb.3:                                #   in Loop: Header=BB72_2 Depth=1
	movq	8(%rsp), %rdi                   # 8-byte Reload
	movaps	16(%rsp), %xmm0                 # 16-byte Reload
	movq	(%rsp), %rsi                    # 8-byte Reload
	movq	%r12, %rdx
	callq	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
.LBB72_4:                               #   in Loop: Header=BB72_2 Depth=1
	addq	%rbp, %r12
	addq	%r14, %rbx
	decq	%r15
	jne	.LBB72_2
.LBB72_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB72_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB72_12
# %bb.15:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit8
	addq	$40, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB72_6:
	.cfi_def_cfa_offset 96
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp430:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp431:
# %bb.7:
.Ltmp432:
	movl	$.L.str.25, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp433:
	jmp	.LBB72_8
.LBB72_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp435:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp436:
# %bb.13:
.Ltmp437:
	movl	$.L.str.26, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp438:
.LBB72_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB72_14:
.Ltmp439:
	jmp	.LBB72_10
.LBB72_9:
.Ltmp434:
.LBB72_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end72:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l, .Lfunc_end72-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSH_IS2_EESG_l,comdat
	.p2align	2, 0x0
GCC_except_table72:
.Lexception13:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end13-.Lcst_begin13
.Lcst_begin13:
	.uleb128 .Lfunc_begin13-.Lfunc_begin13  # >> Call Site 1 <<
	.uleb128 .Ltmp430-.Lfunc_begin13        #   Call between .Lfunc_begin13 and .Ltmp430
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp430-.Lfunc_begin13        # >> Call Site 2 <<
	.uleb128 .Ltmp433-.Ltmp430              #   Call between .Ltmp430 and .Ltmp433
	.uleb128 .Ltmp434-.Lfunc_begin13        #     jumps to .Ltmp434
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp433-.Lfunc_begin13        # >> Call Site 3 <<
	.uleb128 .Ltmp435-.Ltmp433              #   Call between .Ltmp433 and .Ltmp435
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp435-.Lfunc_begin13        # >> Call Site 4 <<
	.uleb128 .Ltmp438-.Ltmp435              #   Call between .Ltmp435 and .Ltmp438
	.uleb128 .Ltmp439-.Lfunc_begin13        #     jumps to .Ltmp439
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp438-.Lfunc_begin13        # >> Call Site 5 <<
	.uleb128 .Lfunc_end72-.Ltmp438          #   Call between .Ltmp438 and .Lfunc_end72
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end13:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$112, %rsp
	.cfi_def_cfa_offset 160
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	64(%rsp), %rax
	movq	%rdi, (%rax)
	movlps	%xmm0, 8(%rax)
	leaq	24(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	16(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$128, %rsp
	.cfi_adjust_cfa_offset -128
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end73:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_, .Lfunc_end73-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l
.Lfunc_begin14:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception14
# %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	pushq	%r15
	.cfi_def_cfa_offset 24
	pushq	%r14
	.cfi_def_cfa_offset 32
	pushq	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$56, %rsp
	.cfi_def_cfa_offset 112
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movl	$4294967040, %r13d              # imm = 0xFFFFFF00
	movq	128(%rsp), %rax
	movq	%rax, 48(%rsp)
	movaps	112(%rsp), %xmm0
	movaps	%xmm0, 32(%rsp)
	movq	%rsi, 24(%rsp)                  # 8-byte Spill
	leaq	(%rsi,%r13), %rcx
	decq	%rcx
	shrq	$8, %rcx
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rcx, %rax
	mulq	%rdx
	cmpq	$16777215, %rcx                 # imm = 0xFFFFFF
	jb	.LBB74_5
# %bb.1:                                # %.lr.ph.i.preheader
	movq	%rdx, %r14
	shrq	$16, %r14
	xorl	%r15d, %r15d
	leaq	512(%r13), %r12
	movabsq	$-4294967040, %rbp              # imm = 0xFFFFFFFF00000100
	movq	24(%rsp), %rbx                  # 8-byte Reload
.LBB74_2:                               # %.lr.ph.i
                                        # =>This Inner Loop Header: Depth=1
	cmpq	%r13, %rbx
	movl	$4294967040, %eax               # imm = 0xFFFFFF00
	cmovbq	%rbx, %rax
	addq	$255, %rax
	shrq	$8, %rax
	leaq	(%rax,%r13), %rdi
	addq	$256, %rdi                      # imm = 0x100
	movl	$1, %esi
	movq	%r12, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB74_4
# %bb.3:                                #   in Loop: Header=BB74_2 Depth=1
	movq	48(%rsp), %rax
	movq	%rax, 16(%rsp)
	movaps	32(%rsp), %xmm0
	movups	%xmm0, (%rsp)
	movq	24(%rsp), %rdi                  # 8-byte Reload
	movq	%r15, %rsi
	callq	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
.LBB74_4:                               #   in Loop: Header=BB74_2 Depth=1
	addq	%r13, %r15
	addq	%rbp, %rbx
	decq	%r14
	jne	.LBB74_2
.LBB74_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB74_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB74_12
# %bb.15:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit6
	addq	$56, %rsp
	.cfi_def_cfa_offset 56
	popq	%rbx
	.cfi_def_cfa_offset 48
	popq	%r12
	.cfi_def_cfa_offset 40
	popq	%r13
	.cfi_def_cfa_offset 32
	popq	%r14
	.cfi_def_cfa_offset 24
	popq	%r15
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB74_6:
	.cfi_def_cfa_offset 112
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp440:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp441:
# %bb.7:
.Ltmp442:
	movl	$.L.str.25, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp443:
	jmp	.LBB74_8
.LBB74_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp445:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp446:
# %bb.13:
.Ltmp447:
	movl	$.L.str.26, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp448:
.LBB74_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB74_14:
.Ltmp449:
	jmp	.LBB74_10
.LBB74_9:
.Ltmp444:
.LBB74_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end74:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l, .Lfunc_end74-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNSE_IS2_EESD_l,comdat
	.p2align	2, 0x0
GCC_except_table74:
.Lexception14:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end14-.Lcst_begin14
.Lcst_begin14:
	.uleb128 .Lfunc_begin14-.Lfunc_begin14  # >> Call Site 1 <<
	.uleb128 .Ltmp440-.Lfunc_begin14        #   Call between .Lfunc_begin14 and .Ltmp440
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp440-.Lfunc_begin14        # >> Call Site 2 <<
	.uleb128 .Ltmp443-.Ltmp440              #   Call between .Ltmp440 and .Ltmp443
	.uleb128 .Ltmp444-.Lfunc_begin14        #     jumps to .Ltmp444
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp443-.Lfunc_begin14        # >> Call Site 3 <<
	.uleb128 .Ltmp445-.Ltmp443              #   Call between .Ltmp443 and .Ltmp445
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp445-.Lfunc_begin14        # >> Call Site 4 <<
	.uleb128 .Ltmp448-.Ltmp445              #   Call between .Ltmp445 and .Ltmp448
	.uleb128 .Ltmp449-.Lfunc_begin14        #     jumps to .Ltmp449
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp448-.Lfunc_begin14        # >> Call Site 5 <<
	.uleb128 .Lfunc_end74-.Ltmp448          #   Call between .Ltmp448 and .Lfunc_end74
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end14:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.cfi_startproc
# %bb.0:
	pushq	%r15
	.cfi_def_cfa_offset 16
	pushq	%r14
	.cfi_def_cfa_offset 24
	pushq	%r13
	.cfi_def_cfa_offset 32
	pushq	%r12
	.cfi_def_cfa_offset 40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	subq	$96, %rsp
	.cfi_def_cfa_offset 144
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	leaq	24(%rsp), %rax
	movq	%rdi, (%rax)
	leaq	16(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	144(%rsp), %rdx
	leaq	64(%rsp), %rbx
	movq	%rdx, (%rbx)
	movq	%rax, 8(%rbx)
	movq	%rcx, 16(%rbx)
	leaq	48(%rsp), %r14
	leaq	32(%rsp), %r15
	leaq	8(%rsp), %r12
	movq	%rsp, %r13
	movq	%r14, %rdi
	movq	%r15, %rsi
	movq	%r12, %rdx
	movq	%r13, %rcx
	callq	__hipPopCallConfiguration
	movq	(%r14), %rsi
	movl	8(%r14), %edx
	movq	(%r15), %rcx
	movl	8(%r15), %r8d
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$112, %rsp
	.cfi_adjust_cfa_offset -112
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%r12
	.cfi_def_cfa_offset 32
	popq	%r13
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%r15
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end75:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_, .Lfunc_end75-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.cfi_endproc
                                        # -- End function
	.text
	.p2align	4, 0x90                         # -- Begin function __hip_module_ctor
	.type	__hip_module_ctor,@function
__hip_module_ctor:                      # @__hip_module_ctor
	.cfi_startproc
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	subq	$32, %rsp
	.cfi_def_cfa_offset 48
	.cfi_offset %rbx, -16
	movq	__hip_gpubin_handle(%rip), %rbx
	testq	%rbx, %rbx
	jne	.LBB76_2
# %bb.1:
	movl	$__hip_fatbin_wrapper, %edi
	callq	__hipRegisterFatBinary
	movq	%rax, %rbx
	movq	%rax, __hip_gpubin_handle(%rip)
.LBB76_2:
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj, %esi
	movl	$.L__unnamed_1, %edx
	movl	$.L__unnamed_1, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE, %esi
	movl	$.L__unnamed_2, %edx
	movl	$.L__unnamed_2, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE, %esi
	movl	$.L__unnamed_3, %edx
	movl	$.L__unnamed_3, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE, %esi
	movl	$.L__unnamed_4, %edx
	movl	$.L__unnamed_4, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf, %esi
	movl	$.L__unnamed_5, %edx
	movl	$.L__unnamed_5, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs, %esi
	movl	$.L__unnamed_6, %edx
	movl	$.L__unnamed_6, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %esi
	movl	$.L__unnamed_7, %edx
	movl	$.L__unnamed_7, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %esi
	movl	$.L__unnamed_8, %edx
	movl	$.L__unnamed_8, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, %esi
	movl	$.L__unnamed_9, %edx
	movl	$.L__unnamed_9, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj, %esi
	movl	$.L__unnamed_10, %edx
	movl	$.L__unnamed_10, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z21GetScaleFactorsKernelPfS_S_S_ii, %esi
	movl	$.L__unnamed_11, %edx
	movl	$.L__unnamed_11, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z24GetScaleFactorsDivKernelPfS_S_ii, %esi
	movl	$.L__unnamed_12, %edx
	movl	$.L__unnamed_12, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z27GetScaleFactorsDoubleKernelPfS_S_i, %esi
	movl	$.L__unnamed_13, %edx
	movl	$.L__unnamed_13, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_, %esi
	movl	$.L__unnamed_14, %edx
	movl	$.L__unnamed_14, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_, %esi
	movl	$.L__unnamed_15, %edx
	movl	$.L__unnamed_15, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_, %esi
	movl	$.L__unnamed_16, %edx
	movl	$.L__unnamed_16, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_, %esi
	movl	$.L__unnamed_17, %edx
	movl	$.L__unnamed_17, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_, %esi
	movl	$.L__unnamed_18, %edx
	movl	$.L__unnamed_18, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	movl	$__hip_module_dtor, %edi
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	atexit                          # TAILCALL
.Lfunc_end76:
	.size	__hip_module_ctor, .Lfunc_end76-__hip_module_ctor
	.cfi_endproc
                                        # -- End function
	.p2align	4, 0x90                         # -- Begin function __hip_module_dtor
	.type	__hip_module_dtor,@function
__hip_module_dtor:                      # @__hip_module_dtor
	.cfi_startproc
# %bb.0:
	movq	__hip_gpubin_handle(%rip), %rdi
	testq	%rdi, %rdi
	je	.LBB77_2
# %bb.1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	callq	__hipUnregisterFatBinary
	movq	$0, __hip_gpubin_handle(%rip)
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
.LBB77_2:
	retq
.Lfunc_end77:
	.size	__hip_module_dtor, .Lfunc_end77-__hip_module_dtor
	.cfi_endproc
                                        # -- End function
	.type	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj,@object # @_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.section	.rodata,"a",@progbits
	.globl	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.p2align	3, 0x0
_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj:
	.quad	_Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.size	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj, 8

	.type	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE,@object # @_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
	.globl	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
	.p2align	3, 0x0
_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE:
	.quad	_Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
	.size	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE, 8

	.type	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE,@object # @_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.globl	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.p2align	3, 0x0
_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE:
	.quad	_Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.size	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE, 8

	.type	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE,@object # @_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
	.globl	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
	.p2align	3, 0x0
_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE:
	.quad	_Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
	.size	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE, 8

	.type	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf,@object # @_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.globl	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.p2align	3, 0x0
_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf:
	.quad	_Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.size	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf, 8

	.type	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs,@object # @_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.globl	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.p2align	3, 0x0
_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs:
	.quad	_Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.size	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs, 8

	.type	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@object # @_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	3, 0x0
_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_:
	.quad	_Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.size	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, 8

	.type	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@object # @_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	3, 0x0
_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_:
	.quad	_Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.size	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, 8

	.type	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@object # @_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	3, 0x0
_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_:
	.quad	_Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.size	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, 8

	.type	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj,@object # @_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.globl	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.p2align	3, 0x0
_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj:
	.quad	_Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.size	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj, 8

	.type	_Z21GetScaleFactorsKernelPfS_S_S_ii,@object # @_Z21GetScaleFactorsKernelPfS_S_S_ii
	.globl	_Z21GetScaleFactorsKernelPfS_S_S_ii
	.p2align	3, 0x0
_Z21GetScaleFactorsKernelPfS_S_S_ii:
	.quad	_Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
	.size	_Z21GetScaleFactorsKernelPfS_S_S_ii, 8

	.type	_Z24GetScaleFactorsDivKernelPfS_S_ii,@object # @_Z24GetScaleFactorsDivKernelPfS_S_ii
	.globl	_Z24GetScaleFactorsDivKernelPfS_S_ii
	.p2align	3, 0x0
_Z24GetScaleFactorsDivKernelPfS_S_ii:
	.quad	_Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
	.size	_Z24GetScaleFactorsDivKernelPfS_S_ii, 8

	.type	_Z27GetScaleFactorsDoubleKernelPfS_S_i,@object # @_Z27GetScaleFactorsDoubleKernelPfS_S_i
	.globl	_Z27GetScaleFactorsDoubleKernelPfS_S_i
	.p2align	3, 0x0
_Z27GetScaleFactorsDoubleKernelPfS_S_i:
	.quad	_Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
	.size	_Z27GetScaleFactorsDoubleKernelPfS_S_i, 8

	.type	.L.str,@object                  # @.str
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str:
	.asciz	"/home/ubuntu/Datasets/stackv2/train-structured-repos-hip-sm89/mmalenta/PAFINDER_bench/master/benchmarks.hip"
	.size	.L.str, 108

	.type	.L.str.1,@object                # @.str.1
.L.str.1:
	.asciz	"Unpacking with texture memory: "
	.size	.L.str.1, 32

	.type	.L.str.2,@object                # @.str.2
.L.str.2:
	.asciz	"s"
	.size	.L.str.2, 2

	.type	.L.str.3,@object                # @.str.3
.L.str.3:
	.asciz	"Unpacking with shared memory: "
	.size	.L.str.3, 31

	.type	.L.str.4,@object                # @.str.4
.L.str.4:
	.asciz	"Unpacking with shared memory with cast to int2 in the function call: "
	.size	.L.str.4, 70

	.type	.L.str.5,@object                # @.str.5
.L.str.5:
	.asciz	"Unpacking with shared memory with the alternative incoming buffer arrangement: "
	.size	.L.str.5, 80

	.type	.L.str.6,@object                # @.str.6
.L.str.6:
	.asciz	"Unoptimised power kernel: "
	.size	.L.str.6, 27

	.type	.L.str.7,@object                # @.str.7
.L.str.7:
	.asciz	"Optimised power kernel: "
	.size	.L.str.7, 25

	.type	.L.str.8,@object                # @.str.8
.L.str.8:
	.asciz	"Optimised power kernel with scaling: "
	.size	.L.str.8, 38

	.type	.L.str.9,@object                # @.str.9
.L.str.9:
	.asciz	"Optimised power kernel with scaling and reversed frequency: "
	.size	.L.str.9, 61

	.type	.L.str.10,@object               # @.str.10
.L.str.10:
	.asciz	"Optimised power kernel with scaling, truncated and reversed frequency: "
	.size	.L.str.10, 72

	.type	.L.str.11,@object               # @.str.11
.L.str.11:
	.asciz	"Double pass scaling factors kernel with division: "
	.size	.L.str.11, 51

	.type	.L.str.12,@object               # @.str.12
.L.str.12:
	.asciz	"Unoptimised scaling factors kernel with division: "
	.size	.L.str.12, 51

	.type	.L.str.13,@object               # @.str.13
.L.str.13:
	.asciz	"Optimised scaling factors kernel: "
	.size	.L.str.13, 35

	.type	.L.str.14,@object               # @.str.14
.L.str.14:
	.asciz	"GPUassert: %s %s %d\n"
	.size	.L.str.14, 21

	.type	_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,@object # @_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.section	.bss._ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,"awG",@nobits,_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,comdat
	.weak	_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.p2align	3, 0x0
_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource:
	.zero	16
	.size	_ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource, 16

	.type	_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,@object # @_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.section	.bss._ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,"awG",@nobits,_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource,comdat
	.weak	_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.p2align	3, 0x0
_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource:
	.quad	0                               # 0x0
	.size	_ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource, 8

	.hidden	__dso_handle
	.type	_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,@object # @_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.section	.rodata._ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,"aG",@progbits,_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,comdat
	.weak	_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.p2align	3, 0x0
_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE:
	.quad	0
	.quad	_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.quad	_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev
	.quad	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev
	.quad	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm
	.quad	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm
	.quad	_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_
	.size	_ZTVN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE, 56

	.type	_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,@object # @_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.section	.rodata._ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,"aG",@progbits,_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,comdat
	.weak	_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE:
	.asciz	"N6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE"
	.size	_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE, 200

	.type	_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,@object # @_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.section	.rodata._ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,"aG",@progbits,_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,comdat
	.weak	_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE:
	.asciz	"N6thrust2mr15memory_resourceINS_10device_ptrIvEEEE"
	.size	_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE, 51

	.type	_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,@object # @_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.section	.rodata._ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,"aG",@progbits,_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE,comdat
	.weak	_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.p2align	3, 0x0
_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.size	_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE, 16

	.type	_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,@object # @_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.section	.rodata._ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,"aG",@progbits,_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE,comdat
	.weak	_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.p2align	3, 0x0
_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.quad	_ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.size	_ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE, 24

	.type	_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,@object # @_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.section	.data._ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,"awG",@progbits,_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,comdat
	.weak	_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.p2align	3, 0x0
_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource:
	.quad	_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE+16
	.size	_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, 8

	.type	_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,@object # @_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.section	.rodata._ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,"aG",@progbits,_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,comdat
	.weak	_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.p2align	3, 0x0
_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE:
	.quad	0
	.quad	_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.quad	_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev
	.quad	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev
	.quad	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm
	.quad	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
	.quad	_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_
	.size	_ZTVN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE, 56

	.type	_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,@object # @_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.section	.bss._ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,"awG",@nobits,_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource,comdat
	.weak	_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.p2align	3, 0x0
_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource:
	.quad	0                               # 0x0
	.size	_ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, 8

	.type	_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,@object # @_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.section	.rodata._ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,"aG",@progbits,_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,comdat
	.weak	_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE:
	.asciz	"N6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE"
	.size	_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE, 166

	.type	_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,@object # @_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.section	.rodata._ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,"aG",@progbits,_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,comdat
	.weak	_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE:
	.asciz	"N6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE"
	.size	_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE, 113

	.type	_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,@object # @_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.section	.rodata._ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,"aG",@progbits,_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE,comdat
	.weak	_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.p2align	3, 0x0
_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.size	_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE, 16

	.type	_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,@object # @_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.section	.rodata._ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,"aG",@progbits,_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE,comdat
	.weak	_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.p2align	3, 0x0
_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.quad	_ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.size	_ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE, 24

	.type	_ZTSN6thrust6system6detail9bad_allocE,@object # @_ZTSN6thrust6system6detail9bad_allocE
	.section	.rodata._ZTSN6thrust6system6detail9bad_allocE,"aG",@progbits,_ZTSN6thrust6system6detail9bad_allocE,comdat
	.weak	_ZTSN6thrust6system6detail9bad_allocE
_ZTSN6thrust6system6detail9bad_allocE:
	.asciz	"N6thrust6system6detail9bad_allocE"
	.size	_ZTSN6thrust6system6detail9bad_allocE, 34

	.type	_ZTIN6thrust6system6detail9bad_allocE,@object # @_ZTIN6thrust6system6detail9bad_allocE
	.section	.rodata._ZTIN6thrust6system6detail9bad_allocE,"aG",@progbits,_ZTIN6thrust6system6detail9bad_allocE,comdat
	.weak	_ZTIN6thrust6system6detail9bad_allocE
	.p2align	3, 0x0
_ZTIN6thrust6system6detail9bad_allocE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system6detail9bad_allocE
	.quad	_ZTISt9bad_alloc
	.size	_ZTIN6thrust6system6detail9bad_allocE, 24

	.type	_ZZN6thrust6system12hip_categoryEvE6result,@object # @_ZZN6thrust6system12hip_categoryEvE6result
	.section	.bss._ZZN6thrust6system12hip_categoryEvE6result,"awG",@nobits,_ZZN6thrust6system12hip_categoryEvE6result,comdat
	.weak	_ZZN6thrust6system12hip_categoryEvE6result
	.p2align	3, 0x0
_ZZN6thrust6system12hip_categoryEvE6result:
	.zero	8
	.size	_ZZN6thrust6system12hip_categoryEvE6result, 8

	.type	_ZGVZN6thrust6system12hip_categoryEvE6result,@object # @_ZGVZN6thrust6system12hip_categoryEvE6result
	.section	.bss._ZGVZN6thrust6system12hip_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust6system12hip_categoryEvE6result,comdat
	.weak	_ZGVZN6thrust6system12hip_categoryEvE6result
	.p2align	3, 0x0
_ZGVZN6thrust6system12hip_categoryEvE6result:
	.quad	0                               # 0x0
	.size	_ZGVZN6thrust6system12hip_categoryEvE6result, 8

	.type	_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE,@object # @_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.section	.rodata._ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE,"aG",@progbits,_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE,comdat
	.weak	_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.p2align	3, 0x0
_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.quad	_ZN6thrust6system14error_categoryD2Ev
	.quad	_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev
	.quad	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv
	.quad	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi
	.quad	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.quad	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.quad	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei
	.size	_ZTVN6thrust6system11hip_rocprim6detail18hip_error_categoryE, 72

	.type	_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE,@object # @_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.section	.rodata._ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE,"aG",@progbits,_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE,comdat
	.weak	_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE
_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE:
	.asciz	"N6thrust6system11hip_rocprim6detail18hip_error_categoryE"
	.size	_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE, 57

	.type	_ZTSN6thrust6system14error_categoryE,@object # @_ZTSN6thrust6system14error_categoryE
	.section	.rodata._ZTSN6thrust6system14error_categoryE,"aG",@progbits,_ZTSN6thrust6system14error_categoryE,comdat
	.weak	_ZTSN6thrust6system14error_categoryE
_ZTSN6thrust6system14error_categoryE:
	.asciz	"N6thrust6system14error_categoryE"
	.size	_ZTSN6thrust6system14error_categoryE, 33

	.type	_ZTIN6thrust6system14error_categoryE,@object # @_ZTIN6thrust6system14error_categoryE
	.section	.rodata._ZTIN6thrust6system14error_categoryE,"aG",@progbits,_ZTIN6thrust6system14error_categoryE,comdat
	.weak	_ZTIN6thrust6system14error_categoryE
	.p2align	3, 0x0
_ZTIN6thrust6system14error_categoryE:
	.quad	_ZTVN10__cxxabiv117__class_type_infoE+16
	.quad	_ZTSN6thrust6system14error_categoryE
	.size	_ZTIN6thrust6system14error_categoryE, 16

	.type	_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE,@object # @_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.section	.rodata._ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE,"aG",@progbits,_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE,comdat
	.weak	_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.p2align	3, 0x0
_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.quad	_ZTIN6thrust6system14error_categoryE
	.size	_ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE, 24

	.type	_ZTVN6thrust6system14error_categoryE,@object # @_ZTVN6thrust6system14error_categoryE
	.section	.rodata._ZTVN6thrust6system14error_categoryE,"aG",@progbits,_ZTVN6thrust6system14error_categoryE,comdat
	.weak	_ZTVN6thrust6system14error_categoryE
	.p2align	3, 0x0
_ZTVN6thrust6system14error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust6system14error_categoryE
	.quad	_ZN6thrust6system14error_categoryD2Ev
	.quad	_ZN6thrust6system14error_categoryD0Ev
	.quad	__cxa_pure_virtual
	.quad	_ZNK6thrust6system14error_category23default_error_conditionEi
	.quad	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.quad	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.quad	__cxa_pure_virtual
	.size	_ZTVN6thrust6system14error_categoryE, 72

	.type	.L.str.15,@object               # @.str.15
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.15:
	.asciz	"hip"
	.size	.L.str.15, 4

	.type	_ZZN6thrust6system15system_categoryEvE6result,@object # @_ZZN6thrust6system15system_categoryEvE6result
	.section	.bss._ZZN6thrust6system15system_categoryEvE6result,"awG",@nobits,_ZZN6thrust6system15system_categoryEvE6result,comdat
	.weak	_ZZN6thrust6system15system_categoryEvE6result
	.p2align	3, 0x0
_ZZN6thrust6system15system_categoryEvE6result:
	.zero	8
	.size	_ZZN6thrust6system15system_categoryEvE6result, 8

	.type	_ZGVZN6thrust6system15system_categoryEvE6result,@object # @_ZGVZN6thrust6system15system_categoryEvE6result
	.section	.bss._ZGVZN6thrust6system15system_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust6system15system_categoryEvE6result,comdat
	.weak	_ZGVZN6thrust6system15system_categoryEvE6result
	.p2align	3, 0x0
_ZGVZN6thrust6system15system_categoryEvE6result:
	.quad	0                               # 0x0
	.size	_ZGVZN6thrust6system15system_categoryEvE6result, 8

	.type	_ZTVN6thrust6system6detail21system_error_categoryE,@object # @_ZTVN6thrust6system6detail21system_error_categoryE
	.section	.rodata._ZTVN6thrust6system6detail21system_error_categoryE,"aG",@progbits,_ZTVN6thrust6system6detail21system_error_categoryE,comdat
	.weak	_ZTVN6thrust6system6detail21system_error_categoryE
	.p2align	3, 0x0
_ZTVN6thrust6system6detail21system_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust6system6detail21system_error_categoryE
	.quad	_ZN6thrust6system14error_categoryD2Ev
	.quad	_ZN6thrust6system6detail21system_error_categoryD0Ev
	.quad	_ZNK6thrust6system6detail21system_error_category4nameEv
	.quad	_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi
	.quad	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.quad	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.quad	_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei
	.size	_ZTVN6thrust6system6detail21system_error_categoryE, 72

	.type	_ZTSN6thrust6system6detail21system_error_categoryE,@object # @_ZTSN6thrust6system6detail21system_error_categoryE
	.section	.rodata._ZTSN6thrust6system6detail21system_error_categoryE,"aG",@progbits,_ZTSN6thrust6system6detail21system_error_categoryE,comdat
	.weak	_ZTSN6thrust6system6detail21system_error_categoryE
_ZTSN6thrust6system6detail21system_error_categoryE:
	.asciz	"N6thrust6system6detail21system_error_categoryE"
	.size	_ZTSN6thrust6system6detail21system_error_categoryE, 47

	.type	_ZTIN6thrust6system6detail21system_error_categoryE,@object # @_ZTIN6thrust6system6detail21system_error_categoryE
	.section	.rodata._ZTIN6thrust6system6detail21system_error_categoryE,"aG",@progbits,_ZTIN6thrust6system6detail21system_error_categoryE,comdat
	.weak	_ZTIN6thrust6system6detail21system_error_categoryE
	.p2align	3, 0x0
_ZTIN6thrust6system6detail21system_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system6detail21system_error_categoryE
	.quad	_ZTIN6thrust6system14error_categoryE
	.size	_ZTIN6thrust6system6detail21system_error_categoryE, 24

	.type	.L.str.16,@object               # @.str.16
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.16:
	.asciz	"system"
	.size	.L.str.16, 7

	.type	_ZZN6thrust6system16generic_categoryEvE6result,@object # @_ZZN6thrust6system16generic_categoryEvE6result
	.section	.bss._ZZN6thrust6system16generic_categoryEvE6result,"awG",@nobits,_ZZN6thrust6system16generic_categoryEvE6result,comdat
	.weak	_ZZN6thrust6system16generic_categoryEvE6result
	.p2align	3, 0x0
_ZZN6thrust6system16generic_categoryEvE6result:
	.zero	8
	.size	_ZZN6thrust6system16generic_categoryEvE6result, 8

	.type	_ZGVZN6thrust6system16generic_categoryEvE6result,@object # @_ZGVZN6thrust6system16generic_categoryEvE6result
	.section	.bss._ZGVZN6thrust6system16generic_categoryEvE6result,"awG",@nobits,_ZGVZN6thrust6system16generic_categoryEvE6result,comdat
	.weak	_ZGVZN6thrust6system16generic_categoryEvE6result
	.p2align	3, 0x0
_ZGVZN6thrust6system16generic_categoryEvE6result:
	.quad	0                               # 0x0
	.size	_ZGVZN6thrust6system16generic_categoryEvE6result, 8

	.type	_ZTVN6thrust6system6detail22generic_error_categoryE,@object # @_ZTVN6thrust6system6detail22generic_error_categoryE
	.section	.rodata._ZTVN6thrust6system6detail22generic_error_categoryE,"aG",@progbits,_ZTVN6thrust6system6detail22generic_error_categoryE,comdat
	.weak	_ZTVN6thrust6system6detail22generic_error_categoryE
	.p2align	3, 0x0
_ZTVN6thrust6system6detail22generic_error_categoryE:
	.quad	0
	.quad	_ZTIN6thrust6system6detail22generic_error_categoryE
	.quad	_ZN6thrust6system14error_categoryD2Ev
	.quad	_ZN6thrust6system6detail22generic_error_categoryD0Ev
	.quad	_ZNK6thrust6system6detail22generic_error_category4nameEv
	.quad	_ZNK6thrust6system14error_category23default_error_conditionEi
	.quad	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE
	.quad	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi
	.quad	_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei
	.size	_ZTVN6thrust6system6detail22generic_error_categoryE, 72

	.type	_ZTSN6thrust6system6detail22generic_error_categoryE,@object # @_ZTSN6thrust6system6detail22generic_error_categoryE
	.section	.rodata._ZTSN6thrust6system6detail22generic_error_categoryE,"aG",@progbits,_ZTSN6thrust6system6detail22generic_error_categoryE,comdat
	.weak	_ZTSN6thrust6system6detail22generic_error_categoryE
_ZTSN6thrust6system6detail22generic_error_categoryE:
	.asciz	"N6thrust6system6detail22generic_error_categoryE"
	.size	_ZTSN6thrust6system6detail22generic_error_categoryE, 48

	.type	_ZTIN6thrust6system6detail22generic_error_categoryE,@object # @_ZTIN6thrust6system6detail22generic_error_categoryE
	.section	.rodata._ZTIN6thrust6system6detail22generic_error_categoryE,"aG",@progbits,_ZTIN6thrust6system6detail22generic_error_categoryE,comdat
	.weak	_ZTIN6thrust6system6detail22generic_error_categoryE
	.p2align	3, 0x0
_ZTIN6thrust6system6detail22generic_error_categoryE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system6detail22generic_error_categoryE
	.quad	_ZTIN6thrust6system14error_categoryE
	.size	_ZTIN6thrust6system6detail22generic_error_categoryE, 24

	.type	.L.str.17,@object               # @.str.17
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.17:
	.asciz	"generic"
	.size	.L.str.17, 8

	.type	_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,@object # @_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.section	.bss._ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,"awG",@nobits,_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,comdat
	.weak	_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.p2align	3, 0x0
_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11:
	.zero	32
	.size	_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, 32

	.type	_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,@object # @_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.section	.bss._ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,"awG",@nobits,_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11,comdat
	.weak	_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.p2align	3, 0x0
_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11:
	.quad	0                               # 0x0
	.size	_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, 8

	.type	.L.str.18,@object               # @.str.18
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.18:
	.asciz	"Unknown error"
	.size	.L.str.18, 14

	.type	.L.str.19,@object               # @.str.19
.L.str.19:
	.asciz	"unknown error"
	.size	.L.str.19, 14

	.type	.L.str.20,@object               # @.str.20
.L.str.20:
	.asciz	"hipErrorUnknown"
	.size	.L.str.20, 16

	.type	.L.str.21,@object               # @.str.21
.L.str.21:
	.asciz	": "
	.size	.L.str.21, 3

	.type	.L.str.23,@object               # @.str.23
.L.str.23:
	.asciz	"basic_string: construction from null is not valid"
	.size	.L.str.23, 50

	.type	_ZTVN6thrust6system6detail9bad_allocE,@object # @_ZTVN6thrust6system6detail9bad_allocE
	.section	.rodata._ZTVN6thrust6system6detail9bad_allocE,"aG",@progbits,_ZTVN6thrust6system6detail9bad_allocE,comdat
	.weak	_ZTVN6thrust6system6detail9bad_allocE
	.p2align	3, 0x0
_ZTVN6thrust6system6detail9bad_allocE:
	.quad	0
	.quad	_ZTIN6thrust6system6detail9bad_allocE
	.quad	_ZN6thrust6system6detail9bad_allocD2Ev
	.quad	_ZN6thrust6system6detail9bad_allocD0Ev
	.quad	_ZNK6thrust6system6detail9bad_alloc4whatEv
	.size	_ZTVN6thrust6system6detail9bad_allocE, 40

	.type	.L.str.24,@object               # @.str.24
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.24:
	.asciz	"HIP free failed"
	.size	.L.str.24, 16

	.type	_ZTSN6thrust6system12system_errorE,@object # @_ZTSN6thrust6system12system_errorE
	.section	.rodata._ZTSN6thrust6system12system_errorE,"aG",@progbits,_ZTSN6thrust6system12system_errorE,comdat
	.weak	_ZTSN6thrust6system12system_errorE
_ZTSN6thrust6system12system_errorE:
	.asciz	"N6thrust6system12system_errorE"
	.size	_ZTSN6thrust6system12system_errorE, 31

	.type	_ZTIN6thrust6system12system_errorE,@object # @_ZTIN6thrust6system12system_errorE
	.section	.rodata._ZTIN6thrust6system12system_errorE,"aG",@progbits,_ZTIN6thrust6system12system_errorE,comdat
	.weak	_ZTIN6thrust6system12system_errorE
	.p2align	3, 0x0
_ZTIN6thrust6system12system_errorE:
	.quad	_ZTVN10__cxxabiv120__si_class_type_infoE+16
	.quad	_ZTSN6thrust6system12system_errorE
	.quad	_ZTISt13runtime_error
	.size	_ZTIN6thrust6system12system_errorE, 24

	.type	_ZTVN6thrust6system12system_errorE,@object # @_ZTVN6thrust6system12system_errorE
	.section	.rodata._ZTVN6thrust6system12system_errorE,"aG",@progbits,_ZTVN6thrust6system12system_errorE,comdat
	.weak	_ZTVN6thrust6system12system_errorE
	.p2align	3, 0x0
_ZTVN6thrust6system12system_errorE:
	.quad	0
	.quad	_ZTIN6thrust6system12system_errorE
	.quad	_ZN6thrust6system12system_errorD2Ev
	.quad	_ZN6thrust6system12system_errorD0Ev
	.quad	_ZNK6thrust6system12system_error4whatEv
	.size	_ZTVN6thrust6system12system_errorE, 40

	.type	.L.str.25,@object               # @.str.25
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.25:
	.asciz	"parallel_for failed"
	.size	.L.str.25, 20

	.type	.L.str.26,@object               # @.str.26
.L.str.26:
	.asciz	"parallel_for: failed to synchronize"
	.size	.L.str.26, 36

	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,@object # @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.section	.rodata._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,"aG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.p2align	3, 0x0
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_:
	.quad	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_, 8

	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,@object # @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.section	.rodata._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,"aG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.p2align	3, 0x0
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_:
	.quad	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_, 8

	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,@object # @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.section	.rodata._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,"aG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.p2align	3, 0x0
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_:
	.quad	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_, 8

	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,@object # @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.section	.rodata._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,"aG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.p2align	3, 0x0
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_:
	.quad	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_, 8

	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,@object # @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.section	.rodata._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,"aG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.p2align	3, 0x0
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_:
	.quad	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_, 8

	.type	.L__unnamed_1,@object           # @0
	.section	.rodata.str1.1,"aMS",@progbits,1
.L__unnamed_1:
	.asciz	"_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj"
	.size	.L__unnamed_1, 66

	.type	.L__unnamed_2,@object           # @1
.L__unnamed_2:
	.asciz	"_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE"
	.size	.L__unnamed_2, 43

	.type	.L__unnamed_3,@object           # @2
.L__unnamed_3:
	.asciz	"_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE"
	.size	.L__unnamed_3, 55

	.type	.L__unnamed_4,@object           # @3
.L__unnamed_4:
	.asciz	"_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE"
	.size	.L__unnamed_4, 43

	.type	.L__unnamed_5,@object           # @4
.L__unnamed_5:
	.asciz	"_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf"
	.size	.L__unnamed_5, 59

	.type	.L__unnamed_6,@object           # @5
.L__unnamed_6:
	.asciz	"_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs"
	.size	.L__unnamed_6, 52

	.type	.L__unnamed_7,@object           # @6
.L__unnamed_7:
	.asciz	"_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_"
	.size	.L__unnamed_7, 63

	.type	.L__unnamed_8,@object           # @7
.L__unnamed_8:
	.asciz	"_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_"
	.size	.L__unnamed_8, 66

	.type	.L__unnamed_9,@object           # @8
.L__unnamed_9:
	.asciz	"_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_"
	.size	.L__unnamed_9, 68

	.type	.L__unnamed_10,@object          # @9
.L__unnamed_10:
	.asciz	"_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj"
	.size	.L__unnamed_10, 56

	.type	.L__unnamed_11,@object          # @10
.L__unnamed_11:
	.asciz	"_Z21GetScaleFactorsKernelPfS_S_S_ii"
	.size	.L__unnamed_11, 36

	.type	.L__unnamed_12,@object          # @11
.L__unnamed_12:
	.asciz	"_Z24GetScaleFactorsDivKernelPfS_S_ii"
	.size	.L__unnamed_12, 37

	.type	.L__unnamed_13,@object          # @12
.L__unnamed_13:
	.asciz	"_Z27GetScaleFactorsDoubleKernelPfS_S_i"
	.size	.L__unnamed_13, 39

	.type	.L__unnamed_14,@object          # @13
.L__unnamed_14:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_"
	.size	.L__unnamed_14, 128

	.type	.L__unnamed_15,@object          # @14
.L__unnamed_15:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_"
	.size	.L__unnamed_15, 153

	.type	.L__unnamed_16,@object          # @15
.L__unnamed_16:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_"
	.size	.L__unnamed_16, 128

	.type	.L__unnamed_17,@object          # @16
.L__unnamed_17:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_"
	.size	.L__unnamed_17, 209

	.type	.L__unnamed_18,@object          # @17
.L__unnamed_18:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_"
	.size	.L__unnamed_18, 226

	.type	__hip_fatbin_wrapper,@object    # @__hip_fatbin_wrapper
	.section	.hipFatBinSegment,"a",@progbits
	.p2align	3, 0x0
__hip_fatbin_wrapper:
	.long	1212764230                      # 0x48495046
	.long	1                               # 0x1
	.quad	__hip_fatbin
	.quad	0
	.size	__hip_fatbin_wrapper, 24

	.type	__hip_gpubin_handle,@object     # @__hip_gpubin_handle
	.local	__hip_gpubin_handle
	.comm	__hip_gpubin_handle,8,8
	.section	.init_array,"aw",@init_array
	.p2align	3, 0x0
	.quad	__hip_module_ctor
	.type	__hip_cuid_,@object             # @__hip_cuid_
	.bss
	.globl	__hip_cuid_
__hip_cuid_:
	.byte	0                               # 0x0
	.size	__hip_cuid_, 1

	.ident	"AMD clang version 18.0.0git (https://github.com/RadeonOpenCompute/llvm-project roc-6.3.2 25012 e5bf7e55c91490b07c49d8960fa7983d864936c4)"
	.section	".note.GNU-stack","",@progbits
	.addrsig
	.addrsig_sym _Z34__device_stub__unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.addrsig_sym _Z25__device_stub__unpack_newPKjP15HIP_vector_typeIfLj2EE
	.addrsig_sym _Z30__device_stub__unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.addrsig_sym _Z25__device_stub__unpack_altPKjP15HIP_vector_typeIfLj2EE
	.addrsig_sym _Z42__device_stub__powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.addrsig_sym _Z34__device_stub__DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.addrsig_sym _Z39__device_stub__DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z42__device_stub__DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z44__device_stub__DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z36__device_stub__GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.addrsig_sym _Z36__device_stub__GetScaleFactorsKernelPfS_S_S_ii
	.addrsig_sym _Z39__device_stub__GetScaleFactorsDivKernelPfS_S_ii
	.addrsig_sym _Z42__device_stub__GetScaleFactorsDoubleKernelPfS_S_i
	.addrsig_sym __gxx_personality_v0
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.addrsig_sym __hip_module_ctor
	.addrsig_sym __hip_module_dtor
	.addrsig_sym _Unwind_Resume
	.addrsig_sym _Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.addrsig_sym _Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
	.addrsig_sym _Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.addrsig_sym _Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
	.addrsig_sym _Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.addrsig_sym _Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.addrsig_sym _Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.addrsig_sym _Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.addrsig_sym _Z21GetScaleFactorsKernelPfS_S_S_ii
	.addrsig_sym _Z24GetScaleFactorsDivKernelPfS_S_ii
	.addrsig_sym _Z27GetScaleFactorsDoubleKernelPfS_S_i
	.addrsig_sym _ZSt4cout
	.addrsig_sym _ZZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.addrsig_sym _ZGVZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_vE8resource
	.addrsig_sym __dso_handle
	.addrsig_sym _ZTVN10__cxxabiv120__si_class_type_infoE
	.addrsig_sym _ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.addrsig_sym _ZTVN10__cxxabiv117__class_type_infoE
	.addrsig_sym _ZTSN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.addrsig_sym _ZTIN6thrust2mr15memory_resourceINS_10device_ptrIvEEEE
	.addrsig_sym _ZTIN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.addrsig_sym _ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.addrsig_sym _ZGVZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource
	.addrsig_sym _ZTSN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.addrsig_sym _ZTSN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.addrsig_sym _ZTIN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEEE
	.addrsig_sym _ZTIN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEEE
	.addrsig_sym _ZTSN6thrust6system6detail9bad_allocE
	.addrsig_sym _ZTISt9bad_alloc
	.addrsig_sym _ZTIN6thrust6system6detail9bad_allocE
	.addrsig_sym _ZZN6thrust6system12hip_categoryEvE6result
	.addrsig_sym _ZGVZN6thrust6system12hip_categoryEvE6result
	.addrsig_sym _ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.addrsig_sym _ZTSN6thrust6system14error_categoryE
	.addrsig_sym _ZTIN6thrust6system14error_categoryE
	.addrsig_sym _ZTIN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.addrsig_sym _ZZN6thrust6system15system_categoryEvE6result
	.addrsig_sym _ZGVZN6thrust6system15system_categoryEvE6result
	.addrsig_sym _ZTSN6thrust6system6detail21system_error_categoryE
	.addrsig_sym _ZTIN6thrust6system6detail21system_error_categoryE
	.addrsig_sym _ZZN6thrust6system16generic_categoryEvE6result
	.addrsig_sym _ZGVZN6thrust6system16generic_categoryEvE6result
	.addrsig_sym _ZTSN6thrust6system6detail22generic_error_categoryE
	.addrsig_sym _ZTIN6thrust6system6detail22generic_error_categoryE
	.addrsig_sym _ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.addrsig_sym _ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11
	.addrsig_sym _ZTSN6thrust6system12system_errorE
	.addrsig_sym _ZTISt13runtime_error
	.addrsig_sym _ZTIN6thrust6system12system_errorE
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.addrsig_sym __hip_fatbin
	.addrsig_sym __hip_fatbin_wrapper
	.addrsig_sym __hip_cuid_

	.text
	.amdgcn_target "amdgcn-amd-amdhsa--gfx1100"
	.protected	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj ; -- Begin function _Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.globl	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
	.p2align	8
	.type	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj,@function
_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj: ; @_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
; %bb.0:
	s_load_b32 s2, s[0:1], 0x10
	s_mov_b32 s3, 0
	s_waitcnt lgkmcnt(0)
	s_cmp_eq_u32 s2, 0
	s_cbranch_scc1 .LBB0_5
; %bb.1:                                ; %.lr.ph
	s_clause 0x1
	s_load_b128 s[16:19], s[0:1], 0x0
	s_load_b32 s0, s[0:1], 0x24
	s_lshl_b32 s1, s15, 7
	s_waitcnt lgkmcnt(0)
	s_clause 0x2
	s_load_b128 s[20:23], s[16:17], 0x30
	s_load_b256 s[4:11], s[16:17], 0x0
	s_load_b32 s12, s[16:17], 0x28
	s_and_b32 s0, s0, 0xffff
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mad_u64_u32 v[1:2], null, s14, s0, v[0:1]
	v_cvt_f32_i32_e32 v1, v1
	s_waitcnt lgkmcnt(0)
	s_bitcmp0_b32 s22, 20
	s_cselect_b32 vcc_lo, -1, 0
	s_bitcmp0_b32 s20, 15
	v_cvt_f32_u32_e32 v3, s12
	s_cselect_b32 s0, -1, 0
	s_bfe_u32 s13, s6, 0xe000e
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	s_add_i32 s13, s13, 1
	s_add_u32 s12, s18, 4
	v_cvt_f32_u32_e32 v2, s13
	s_addc_u32 s13, s19, 0
	v_cndmask_b32_e64 v6, 1.0, v2, s0
	v_cndmask_b32_e64 v2, 1.0, v3, s0
	s_mul_i32 s0, s15, 0x700
	s_mul_i32 s15, s15, 7
	v_lshl_add_u32 v4, v0, 8, s0
	v_rcp_f32_e32 v7, v6
	v_rcp_f32_e32 v3, v2
	v_mul_f32_e32 v2, v2, v1
	v_add_lshl_u32 v0, s15, v0, 8
	v_or_b32_e32 v8, 0x80, v4
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_floor_f32_e32 v2, v2
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v2, v3, v2
	v_cndmask_b32_e32 v2, v1, v2, vcc_lo
.LBB0_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_3 Depth 2
	v_ashrrev_i32_e32 v1, 31, v0
	s_mov_b32 s14, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[4:5], 3, v[0:1]
	v_add_co_u32 v4, s0, s12, v4
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v5, s0, s13, v5, s0
.LBB0_3:                                ;   Parent Loop BB0_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_add_i32 s0, s1, s14
	v_add_nc_u32_e32 v11, s14, v8
	v_cvt_f32_i32_e32 v1, s0
	s_add_i32 s14, s14, 1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	s_cmpk_eq_i32 s14, 0x80
	v_ashrrev_i32_e32 v12, 31, v11
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_mul_f32_e32 v3, v6, v1
	v_lshlrev_b64 v[11:12], 3, v[11:12]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_floor_f32_e32 v3, v3
	v_add_co_u32 v11, s0, s18, v11
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_mul_f32_e32 v3, v7, v3
	v_add_co_ci_u32_e64 v12, s0, s19, v12, s0
	s_delay_alu instid0(VALU_DEP_2)
	v_cndmask_b32_e32 v3, v1, v3, vcc_lo
	image_sample_lz v[9:10], v[2:3], s[4:11], s[20:23] dmask:0x3 dim:SQ_RSRC_IMG_2D
	s_waitcnt vmcnt(0)
	v_lshrrev_b32_e32 v1, 8, v10
	v_perm_b32 v3, 0, v10, 0xc0c0001
	v_lshrrev_b32_e32 v13, 8, v9
	v_perm_b32 v14, 0, v9, 0xc0c0001
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_perm_b32 v1, v1, v10, 0xc0c0503
	v_bfe_i32 v3, v3, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_perm_b32 v9, v13, v9, 0xc0c0503
	v_bfe_i32 v13, v14, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v1, v1, 0, 16
	v_cvt_f32_i32_e32 v10, v3
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v3, v9, 0, 16
	v_cvt_f32_i32_e32 v14, v13
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cvt_f32_i32_e32 v9, v1
	v_cvt_f32_i32_e32 v13, v3
	global_store_b64 v[4:5], v[9:10], off offset:-4
	v_add_co_u32 v4, s0, v4, 8
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v5, s0, 0, v5, s0
	global_store_b64 v[11:12], v[13:14], off
	s_cbranch_scc0 .LBB0_3
; %bb.4:                                ;   in Loop: Header=BB0_2 Depth=1
	v_add_nc_u32_e32 v0, 0x15000, v0
	v_add_nc_u32_e32 v8, 0x15000, v8
	s_add_i32 s3, s3, 1
	s_addk_i32 s1, 0x1800
	s_cmp_eq_u32 s3, s2
	s_cbranch_scc0 .LBB0_2
.LBB0_5:                                ; %._crit_edge
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 280
		.amdhsa_user_sgpr_count 14
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 1
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 15
		.amdhsa_next_free_sgpr 24
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end0:
	.size	_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj, .Lfunc_end0-_Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 584
; NumSgprs: 26
; NumVgprs: 15
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 26
; NumVGPRsForWavesPerEU: 15
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 14
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE ; -- Begin function _Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
	.globl	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
	.p2align	8
	.type	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE,@function
_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE: ; @_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
; %bb.0:
	s_clause 0x1
	s_load_b32 s4, s[0:1], 0x1c
	s_load_b128 s[0:3], s[0:1], 0x0
	v_mad_u64_u32 v[3:4], null, 0x380, s15, v[0:1]
	s_mul_i32 s5, s15, 0x1c000
	v_dual_mov_b32 v2, 0 :: v_dual_lshlrev_b32 v7, 2, v0
	v_or_b32_e32 v6, s5, v0
	s_mov_b32 s6, 0
	s_waitcnt lgkmcnt(0)
	s_and_b32 s4, s4, 0xffff
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_lshl_b32 s5, s4, 3
.LBB1_1:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB1_2 Depth 2
                                        ;     Child Loop BB1_4 Depth 2
	v_ashrrev_i32_e32 v4, 31, v3
	v_mov_b32_e32 v1, v0
	s_mov_b32 s7, 7
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[4:5], 3, v[3:4]
	v_add_co_u32 v4, vcc_lo, s0, v4
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v5, vcc_lo, s1, v5, vcc_lo
.LBB1_2:                                ;   Parent Loop BB1_1 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	global_load_b64 v[8:9], v[4:5], off offset:-4
	v_mul_hi_u32 v10, 0x24924925, v1
	v_add_co_u32 v4, vcc_lo, v4, s5
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v5, vcc_lo
	s_add_i32 s7, s7, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	s_cmp_eq_u32 s7, 0
	v_sub_nc_u32_e32 v11, v1, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshrrev_b32_e32 v11, 1, v11
	v_add_nc_u32_e32 v10, v11, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshrrev_b32_e32 v10, 2, v10
	v_mul_lo_u32 v11, v10, 7
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_sub_nc_u32_e32 v11, v1, v11
	v_add_nc_u32_e32 v1, s4, v1
	v_lshlrev_b32_e32 v11, 7, v11
	s_delay_alu instid0(VALU_DEP_1)
	v_add_lshl_u32 v10, v11, v10, 2
	s_waitcnt vmcnt(0)
	ds_store_2addr_stride64_b32 v10, v9, v8 offset1:14
	s_cbranch_scc0 .LBB1_2
; %bb.3:                                ;   in Loop: Header=BB1_1 Depth=1
	v_mov_b32_e32 v1, v6
	s_mov_b32 s7, 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB1_4:                                ;   Parent Loop BB1_1 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	v_dual_mov_b32 v9, v2 :: v_dual_add_nc_u32 v4, s7, v7
	v_add_nc_u32_e32 v8, 0x540000, v1
	v_lshlrev_b64 v[10:11], 3, v[1:2]
	v_add_nc_u32_e32 v1, 0x4000, v1
	ds_load_2addr_stride64_b32 v[4:5], v4 offset1:14
	s_addk_i32 s7, 0x200
	v_lshlrev_b64 v[8:9], 3, v[8:9]
	s_cmpk_lg_i32 s7, 0xe00
	v_add_co_u32 v10, vcc_lo, s2, v10
	v_add_co_ci_u32_e32 v11, vcc_lo, s3, v11, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_add_co_u32 v8, vcc_lo, s2, v8
	v_add_co_ci_u32_e32 v9, vcc_lo, s3, v9, vcc_lo
	s_waitcnt lgkmcnt(0)
	v_lshrrev_b32_e32 v12, 8, v4
	v_lshrrev_b32_e32 v13, 8, v5
	v_perm_b32 v14, 0, v4, 0xc0c0001
	v_perm_b32 v15, 0, v5, 0xc0c0001
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_perm_b32 v4, v12, v4, 0xc0c0503
	v_perm_b32 v5, v13, v5, 0xc0c0503
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v12, v14, 0, 16
	v_bfe_i32 v13, v15, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v4, v4, 0, 16
	v_bfe_i32 v14, v5, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_i32_e32 v5, v12
	v_cvt_f32_i32_e32 v13, v13
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_i32_e32 v4, v4
	v_cvt_f32_i32_e32 v12, v14
	s_clause 0x1
	global_store_b64 v[10:11], v[4:5], off
	global_store_b64 v[8:9], v[12:13], off
	s_cbranch_scc1 .LBB1_4
; %bb.5:                                ;   in Loop: Header=BB1_1 Depth=1
	v_add_nc_u32_e32 v3, 0xa800, v3
	v_add_nc_u32_e32 v6, 0x80, v6
	s_add_i32 s6, s6, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmpk_eq_i32 s6, 0x80
	s_cbranch_scc0 .LBB1_1
; %bb.6:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
		.amdhsa_group_segment_fixed_size 7168
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 272
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 16
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end1:
	.size	_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE, .Lfunc_end1-_Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 548
; NumSgprs: 18
; NumVgprs: 16
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 7168 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 16
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE ; -- Begin function _Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.globl	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
	.p2align	8
	.type	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE,@function
_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE: ; @_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
; %bb.0:
	s_clause 0x1
	s_load_b32 s4, s[0:1], 0x1c
	s_load_b128 s[0:3], s[0:1], 0x0
	s_mul_i32 s15, s15, 0x1c000
	v_dual_mov_b32 v2, 0 :: v_dual_lshlrev_b32 v7, 3, v0
	v_or_b32_e32 v6, s15, v0
	s_mov_b32 s6, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_mov_b32_e32 v3, v6
	s_waitcnt lgkmcnt(0)
	s_and_b32 s4, s4, 0xffff
	s_lshl_b32 s5, s4, 3
.LBB2_1:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB2_2 Depth 2
                                        ;     Child Loop BB2_4 Depth 2
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_ashrrev_i32_e32 v4, 31, v3
	v_mov_b32_e32 v1, v0
	s_mov_b32 s7, 7
	v_lshlrev_b64 v[4:5], 3, v[3:4]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v4, vcc_lo, s0, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s1, v5, vcc_lo
.LBB2_2:                                ;   Parent Loop BB2_1 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	global_load_b64 v[8:9], v[4:5], off
	v_mul_hi_u32 v10, 0x24924925, v1
	v_add_co_u32 v4, vcc_lo, v4, s5
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v5, vcc_lo
	s_add_i32 s7, s7, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	s_cmp_eq_u32 s7, 0
	v_sub_nc_u32_e32 v11, v1, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshrrev_b32_e32 v11, 1, v11
	v_add_nc_u32_e32 v10, v11, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshrrev_b32_e32 v10, 2, v10
	v_mul_lo_u32 v11, v10, 7
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_sub_nc_u32_e32 v11, v1, v11
	v_add_nc_u32_e32 v1, s4, v1
	v_lshlrev_b32_e32 v11, 7, v11
	s_delay_alu instid0(VALU_DEP_1)
	v_add_lshl_u32 v10, v11, v10, 3
	s_waitcnt vmcnt(0)
	ds_store_b64 v10, v[8:9]
	s_cbranch_scc0 .LBB2_2
; %bb.3:                                ;   in Loop: Header=BB2_1 Depth=1
	v_mov_b32_e32 v1, v6
	s_mov_b32 s7, 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB2_4:                                ;   Parent Loop BB2_1 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	v_dual_mov_b32 v9, v2 :: v_dual_add_nc_u32 v4, s7, v7
	v_add_nc_u32_e32 v8, 0x540000, v1
	v_lshlrev_b64 v[10:11], 3, v[1:2]
	v_add_nc_u32_e32 v1, 0x4000, v1
	ds_load_b64 v[4:5], v4
	s_addk_i32 s7, 0x400
	v_lshlrev_b64 v[8:9], 3, v[8:9]
	s_cmpk_lg_i32 s7, 0x1c00
	v_add_co_u32 v10, vcc_lo, s2, v10
	v_add_co_ci_u32_e32 v11, vcc_lo, s3, v11, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_add_co_u32 v8, vcc_lo, s2, v8
	v_add_co_ci_u32_e32 v9, vcc_lo, s3, v9, vcc_lo
	s_waitcnt lgkmcnt(0)
	v_lshrrev_b32_e32 v12, 8, v5
	v_lshrrev_b32_e32 v13, 8, v4
	v_perm_b32 v14, 0, v5, 0xc0c0001
	v_perm_b32 v15, 0, v4, 0xc0c0001
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_perm_b32 v5, v12, v5, 0xc0c0503
	v_perm_b32 v4, v13, v4, 0xc0c0503
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v12, v14, 0, 16
	v_bfe_i32 v13, v15, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_bfe_i32 v14, v5, 0, 16
	v_bfe_i32 v15, v4, 0, 16
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_i32_e32 v5, v12
	v_cvt_f32_i32_e32 v13, v13
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_i32_e32 v4, v14
	v_cvt_f32_i32_e32 v12, v15
	s_clause 0x1
	global_store_b64 v[10:11], v[4:5], off
	global_store_b64 v[8:9], v[12:13], off
	s_cbranch_scc1 .LBB2_4
; %bb.5:                                ;   in Loop: Header=BB2_1 Depth=1
	v_add_nc_u32_e32 v3, 0x380, v3
	v_add_nc_u32_e32 v6, 0x80, v6
	s_add_i32 s6, s6, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmpk_eq_i32 s6, 0x80
	s_cbranch_scc0 .LBB2_1
; %bb.6:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
		.amdhsa_group_segment_fixed_size 7168
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 272
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 16
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end2:
	.size	_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE, .Lfunc_end2-_Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 536
; NumSgprs: 18
; NumVgprs: 16
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 7168 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 16
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE ; -- Begin function _Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
	.globl	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
	.p2align	8
	.type	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE,@function
_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE: ; @_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
; %bb.0:
	v_and_b32_e32 v1, 0x3fe, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_ne_u32_e32 0x3fe, v1
	s_cbranch_execz .LBB3_5
; %bb.1:
	v_bfe_u32 v2, v0, 10, 10
	s_clause 0x1
	s_load_b32 s4, s[0:1], 0x1c
	s_load_b128 s[0:3], s[0:1], 0x0
	s_mul_i32 s5, s15, 0x38000
	s_mul_i32 s6, s15, 0x1c000
	v_mul_u32_u24_e32 v0, 0x2493, v2
	v_mul_u32_u24_e32 v1, 0x1c1, v2
	v_lshlrev_b32_e32 v6, 1, v2
	v_lshlrev_b32_e32 v7, 2, v2
	v_mov_b32_e32 v5, s6
	v_lshrrev_b32_e32 v0, 16, v0
	v_lshrrev_b32_e32 v1, 16, v1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_mul_lo_u16 v3, v0, 7
	v_mul_lo_u16 v4, 0x92, v1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_sub_nc_u16 v3, v2, v3
	v_sub_nc_u16 v4, v2, v4
	s_waitcnt lgkmcnt(0)
	s_lshr_b32 s4, s4, 16
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_mad_u16 v0, 0x92, v3, v0
	v_dual_mov_b32 v3, s5 :: v_dual_and_b32 v4, 0xffff, v4
	s_movk_i32 s5, 0x71
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_and_b32_e32 v0, 0xffff, v0
	v_lshl_or_b32 v4, v1, 14, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_dual_mov_b32 v1, 0 :: v_dual_lshlrev_b32 v8, 2, v0
	v_or_b32_e32 v9, 0x540000, v4
.LBB3_2:                                ; =>This Inner Loop Header: Depth=1
	s_mov_b32 s6, exec_lo
	v_cmpx_gt_u32_e32 0x1c000, v2
	s_cbranch_execz .LBB3_4
; %bb.3:                                ;   in Loop: Header=BB3_2 Depth=1
	v_add_nc_u32_e32 v0, v3, v6
	v_add_nc_u32_e32 v3, 0x7fc, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[10:11], 2, v[0:1]
	v_add_nc_u32_e32 v0, 1, v0
	v_lshlrev_b64 v[12:13], 2, v[0:1]
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_add_co_u32 v10, vcc_lo, s0, v10
	v_add_co_ci_u32_e32 v11, vcc_lo, s1, v11, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_add_co_u32 v12, vcc_lo, s0, v12
	v_add_co_ci_u32_e32 v13, vcc_lo, s1, v13, vcc_lo
	s_clause 0x1
	global_load_b32 v0, v[10:11], off
	global_load_b32 v10, v[12:13], off
	v_add_nc_u32_e32 v12, v9, v5
	s_waitcnt vmcnt(1)
	ds_store_b32 v8, v0
	s_waitcnt vmcnt(0)
	ds_store_b32 v8, v10 offset:4088
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	ds_load_b32 v0, v7 offset:4088
	ds_load_b32 v14, v7
	v_add_nc_u32_e32 v10, v4, v5
	v_ashrrev_i32_e32 v13, 31, v12
	v_add_nc_u32_e32 v5, 0x92, v5
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_ashrrev_i32_e32 v11, 31, v10
	v_lshlrev_b64 v[12:13], 3, v[12:13]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[10:11], 3, v[10:11]
	v_add_co_u32 v10, vcc_lo, s2, v10
	s_waitcnt lgkmcnt(1)
	v_lshrrev_b32_e32 v15, 8, v0
	s_waitcnt lgkmcnt(0)
	v_lshrrev_b32_e32 v16, 8, v14
	v_perm_b32 v17, 0, v0, 0xc0c0001
	v_perm_b32 v18, 0, v14, 0xc0c0001
	v_add_co_ci_u32_e32 v11, vcc_lo, s3, v11, vcc_lo
	v_perm_b32 v0, v15, v0, 0xc0c0503
	v_perm_b32 v14, v16, v14, 0xc0c0503
	v_bfe_i32 v15, v17, 0, 16
	v_bfe_i32 v16, v18, 0, 16
	v_add_co_u32 v12, vcc_lo, s2, v12
	v_bfe_i32 v0, v0, 0, 16
	v_bfe_i32 v18, v14, 0, 16
	v_cvt_f32_i32_e32 v15, v15
	v_add_co_ci_u32_e32 v13, vcc_lo, s3, v13, vcc_lo
	s_delay_alu instid0(VALU_DEP_4)
	v_cvt_f32_i32_e32 v14, v0
	v_cvt_f32_i32_e32 v17, v16
	v_cvt_f32_i32_e32 v16, v18
	s_clause 0x1
	global_store_b64 v[10:11], v[14:15], off
	global_store_b64 v[12:13], v[16:17], off
.LBB3_4:                                ;   in Loop: Header=BB3_2 Depth=1
	s_or_b32 exec_lo, exec_lo, s6
	v_add_nc_u32_e32 v2, s4, v2
	s_add_i32 s5, s5, -1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_lg_u32 s5, 0
	s_cbranch_scc1 .LBB3_2
.LBB3_5:                                ; %.loopexit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
		.amdhsa_group_segment_fixed_size 8176
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 272
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 1
		.amdhsa_next_free_vgpr 19
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end3:
	.size	_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE, .Lfunc_end3-_Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 640
; NumSgprs: 18
; NumVgprs: 19
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 8176 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 2
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 19
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 1
	.text
	.protected	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf ; -- Begin function _Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.globl	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
	.p2align	8
	.type	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf,@function
_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf: ; @_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
; %bb.0:
	v_and_b32_e32 v1, 31, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e32 27, v1
	s_cbranch_execz .LBB4_11
; %bb.1:                                ; %.lr.ph
	s_load_b32 s0, s[0:1], 0x1c
	v_lshrrev_b32_e32 v1, 5, v0
	s_mov_b32 s1, 0
	s_waitcnt lgkmcnt(0)
	s_and_b32 s0, s0, 0xffff
.LBB4_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB4_3 Depth 2
                                        ;       Child Loop BB4_5 Depth 3
	v_mov_b32_e32 v2, v0
	s_mov_b32 s3, 0
	s_barrier
	buffer_gl0_inv
                                        ; implicit-def: $sgpr2
                                        ; implicit-def: $sgpr5
                                        ; implicit-def: $sgpr4
.LBB4_3:                                ;   Parent Loop BB4_2 Depth=1
                                        ; =>  This Loop Header: Depth=2
                                        ;       Child Loop BB4_5 Depth 3
	s_or_b32 s4, s4, exec_lo
	s_or_b32 s5, s5, exec_lo
	s_mov_b32 s6, exec_lo
	v_cmpx_gt_u32_e32 0x2361, v2
	s_cbranch_execz .LBB4_7
; %bb.4:                                ; %.preheader.preheader
                                        ;   in Loop: Header=BB4_3 Depth=2
	s_mov_b32 s7, 4
.LBB4_5:                                ; %.preheader
                                        ;   Parent Loop BB4_2 Depth=1
                                        ;     Parent Loop BB4_3 Depth=2
                                        ; =>    This Inner Loop Header: Depth=3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s7, s7, -1
	s_cmp_eq_u32 s7, 0
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc0 .LBB4_5
; %bb.6:                                ;   in Loop: Header=BB4_3 Depth=2
	v_mul_lo_u32 v2, v2, s0
	s_and_not1_b32 s5, s5, exec_lo
	s_and_not1_b32 s4, s4, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_cmp_lt_u32_e32 vcc_lo, 0x236f, v2
	s_and_b32 s7, vcc_lo, exec_lo
	s_or_b32 s5, s5, s7
.LBB4_7:                                ; %Flow
                                        ;   in Loop: Header=BB4_3 Depth=2
	s_or_b32 exec_lo, exec_lo, s6
	s_xor_b32 s6, s4, -1
	s_and_b32 s7, exec_lo, s5
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	s_or_b32 s3, s7, s3
	s_and_not1_b32 s2, s2, exec_lo
	s_and_b32 s6, s6, exec_lo
	s_or_b32 s2, s2, s6
	s_and_not1_b32 exec_lo, exec_lo, s3
	s_cbranch_execnz .LBB4_3
; %bb.8:                                ; %loop.exit.guard
                                        ;   in Loop: Header=BB4_2 Depth=1
	s_or_b32 exec_lo, exec_lo, s3
	s_mov_b32 s3, -1
	s_and_saveexec_b32 s4, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_xor_b32 s2, exec_lo, s4
; %bb.9:                                ; %.critedge
                                        ;   in Loop: Header=BB4_2 Depth=1
	v_add_nc_u32_e32 v2, 32, v1
	v_cmp_lt_u32_e32 vcc_lo, 0x12f, v1
	s_delay_alu instid0(VALU_DEP_2)
	v_mov_b32_e32 v1, v2
	s_or_not1_b32 s3, vcc_lo, exec_lo
; %bb.10:                               ; %Flow75
                                        ;   in Loop: Header=BB4_2 Depth=1
	s_or_b32 exec_lo, exec_lo, s2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s2, exec_lo, s3
	s_or_b32 s1, s2, s1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s1
	s_cbranch_execnz .LBB4_2
.LBB4_11:                               ; %.loopexit
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 272
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 3
		.amdhsa_next_free_sgpr 8
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end4:
	.size	_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf, .Lfunc_end4-_Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 276
; NumSgprs: 10
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 1
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 10
; NumVGPRsForWavesPerEU: 3
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs ; -- Begin function _Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.globl	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
	.p2align	8
	.type	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs,@function
_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs: ; @_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
; %bb.0:
	s_load_b64 s[2:3], s[0:1], 0x8
	v_and_b32_e32 v1, 31, v0
	s_mov_b32 s6, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e32 27, v1
	s_cbranch_execz .LBB5_5
; %bb.1:                                ; %.lr.ph
	s_clause 0x1
	s_load_b32 s7, s[0:1], 0x24
	s_load_b64 s[4:5], s[0:1], 0x0
	v_add_nc_u32_e32 v3, 19, v0
	s_lshl_b32 s8, s15, 6
	v_lshrrev_b32_e32 v2, 5, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_and_or_b32 v3, v3, 31, s8
	s_mov_b32 s8, 0
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s7, s7, 0xb0005
.LBB5_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB5_3 Depth 2
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v6, v2, 14, v3
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v5, 0
	s_mov_b32 s9, -1
	s_mov_b32 s10, 0
.LBB5_3:                                ;   Parent Loop BB5_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v7, s10, v6
	s_mov_b32 s10, 0x540000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v8, 31, v7
	v_lshlrev_b64 v[7:8], 3, v[7:8]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v7, vcc_lo, s4, v7
	v_add_co_ci_u32_e32 v8, vcc_lo, s5, v8, vcc_lo
	s_and_not1_b32 vcc_lo, exec_lo, s9
	s_mov_b32 s9, 0
	s_clause 0x1
	global_load_b64 v[9:10], v[7:8], off
	global_load_b64 v[7:8], v[7:8], off offset:256
	s_waitcnt vmcnt(1)
	v_dual_fmac_f32 v4, v9, v9 :: v_dual_fmac_f32 v5, v10, v10
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1)
	v_dual_fmac_f32 v4, v7, v7 :: v_dual_fmac_f32 v5, v8, v8
	s_cbranch_vccz .LBB5_3
; %bb.4:                                ;   in Loop: Header=BB5_2 Depth=1
	v_mul_lo_u32 v6, v2, 27
	v_add_nc_u32_e32 v2, s7, v2
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v4, v5, v4
	v_cmp_lt_u32_e32 vcc_lo, 0x14f, v2
	s_delay_alu instid0(VALU_DEP_4)
	v_add_lshl_u32 v6, v6, v1, 2
	s_or_b32 s8, vcc_lo, s8
	ds_store_b32 v6, v4
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB5_2
.LBB5_5:                                ; %Flow73
	s_or_b32 exec_lo, exec_lo, s6
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_mov_b32 s4, exec_lo
	v_cmpx_gt_u32_e32 0x237, v0
	s_cbranch_execz .LBB5_9
; %bb.6:
	v_dual_mov_b32 v1, 0 :: v_dual_lshlrev_b32 v2, 6, v0
	s_mov_b32 s4, 0
.LBB5_7:                                ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v3, s4, v2
	s_add_i32 s4, s4, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s4, 64
	ds_load_b32 v3, v3
	s_waitcnt lgkmcnt(0)
	v_add_f32_e32 v1, v1, v3
	s_cbranch_scc0 .LBB5_7
; %bb.8:
	s_load_b32 s0, s[0:1], 0x10
	s_waitcnt lgkmcnt(0)
	s_sext_i32_i16 s0, s0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_mad_u64_u32 v[2:3], null, s15, s0, v[0:1]
	v_mov_b32_e32 v3, 0
	v_lshlrev_b64 v[2:3], 2, v[2:3]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v2, vcc_lo, s2, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, s3, v3, vcc_lo
	global_store_b32 v[2:3], v1, off
.LBB5_9:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
		.amdhsa_group_segment_fixed_size 36288
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 280
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 11
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end5:
	.size	_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs, .Lfunc_end5-_Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 448
; NumSgprs: 18
; NumVgprs: 11
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 36288 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 11
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ ; -- Begin function _Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	8
	.type	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: ; @_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
; %bb.0:
	s_load_b64 s[2:3], s[0:1], 0x8
	v_and_b32_e32 v1, 31, v0
	s_mov_b32 s6, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e32 27, v1
	s_cbranch_execz .LBB6_5
; %bb.1:                                ; %.lr.ph
	s_clause 0x1
	s_load_b32 s7, s[0:1], 0x34
	s_load_b64 s[4:5], s[0:1], 0x0
	v_add_nc_u32_e32 v3, 19, v0
	s_lshl_b32 s8, s15, 6
	v_lshrrev_b32_e32 v2, 5, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_and_or_b32 v3, v3, 31, s8
	s_mov_b32 s8, 0
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s7, s7, 0xb0005
.LBB6_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB6_3 Depth 2
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v6, v2, 14, v3
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v5, 0
	s_mov_b32 s9, -1
	s_mov_b32 s10, 0
.LBB6_3:                                ;   Parent Loop BB6_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v7, s10, v6
	s_mov_b32 s10, 0x540000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v8, 31, v7
	v_lshlrev_b64 v[7:8], 3, v[7:8]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v7, vcc_lo, s4, v7
	v_add_co_ci_u32_e32 v8, vcc_lo, s5, v8, vcc_lo
	s_and_not1_b32 vcc_lo, exec_lo, s9
	s_mov_b32 s9, 0
	s_clause 0x1
	global_load_b64 v[9:10], v[7:8], off
	global_load_b64 v[7:8], v[7:8], off offset:256
	s_waitcnt vmcnt(1)
	v_dual_fmac_f32 v4, v9, v9 :: v_dual_fmac_f32 v5, v10, v10
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1)
	v_dual_fmac_f32 v4, v7, v7 :: v_dual_fmac_f32 v5, v8, v8
	s_cbranch_vccz .LBB6_3
; %bb.4:                                ;   in Loop: Header=BB6_2 Depth=1
	v_mul_lo_u32 v6, v2, 27
	v_add_nc_u32_e32 v2, s7, v2
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v4, v5, v4
	v_cmp_lt_u32_e32 vcc_lo, 0x14f, v2
	s_delay_alu instid0(VALU_DEP_4)
	v_add_lshl_u32 v6, v6, v1, 2
	s_or_b32 s8, vcc_lo, s8
	ds_store_b32 v6, v4
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB6_2
.LBB6_5:                                ; %Flow86
	s_or_b32 exec_lo, exec_lo, s6
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_mov_b32 s4, exec_lo
	v_cmpx_gt_u32_e32 0x237, v0
	s_cbranch_execz .LBB6_9
; %bb.6:
	v_dual_mov_b32 v1, 0 :: v_dual_lshlrev_b32 v2, 6, v0
	s_mov_b32 s4, 0
.LBB6_7:                                ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v3, s4, v2
	s_add_i32 s4, s4, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s4, 64
	ds_load_b32 v3, v3
	s_waitcnt lgkmcnt(0)
	v_add_f32_e32 v1, v1, v3
	s_cbranch_scc0 .LBB6_7
; %bb.8:
	s_load_b128 s[4:7], s[0:1], 0x18
	v_lshlrev_b32_e32 v2, 2, v0
	s_load_b32 s0, s[0:1], 0x10
	s_waitcnt lgkmcnt(0)
	s_clause 0x1
	global_load_b32 v3, v2, s[4:5]
	global_load_b32 v2, v2, s[6:7]
	s_sext_i32_i16 s0, s0
	s_waitcnt vmcnt(1)
	v_sub_f32_e32 v1, v1, v3
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmaak_f32 v1, v1, v2, 0x42810000
	v_ceil_f32_e32 v1, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_3)
	v_cvt_i32_f32_e32 v3, v1
	v_mad_u64_u32 v[1:2], null, s15, s0, v[0:1]
	v_mov_b32_e32 v2, 0
	v_max_i32_e32 v0, 0, v3
	v_cmp_gt_i32_e32 vcc_lo, 0x100, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_ubyte0_e32 v4, v0
	v_lshlrev_b64 v[0:1], 2, v[1:2]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v2, 0x437f0000, v4, vcc_lo
	v_add_co_u32 v0, vcc_lo, s2, v0
	s_delay_alu instid0(VALU_DEP_3)
	v_add_co_ci_u32_e32 v1, vcc_lo, s3, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB6_9:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
		.amdhsa_group_segment_fixed_size 36288
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 296
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 11
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end6:
	.size	_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end6-_Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 544
; NumSgprs: 18
; NumVgprs: 11
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 36288 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 11
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ ; -- Begin function _Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	8
	.type	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: ; @_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
; %bb.0:
	s_load_b64 s[2:3], s[0:1], 0x8
	v_and_b32_e32 v1, 31, v0
	s_mov_b32 s6, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e32 27, v1
	s_cbranch_execz .LBB7_5
; %bb.1:                                ; %.lr.ph
	s_clause 0x1
	s_load_b32 s7, s[0:1], 0x34
	s_load_b64 s[4:5], s[0:1], 0x0
	v_add_nc_u32_e32 v3, 19, v0
	s_lshl_b32 s8, s15, 6
	v_lshrrev_b32_e32 v2, 5, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_and_or_b32 v3, v3, 31, s8
	s_mov_b32 s8, 0
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s7, s7, 0xb0005
.LBB7_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB7_3 Depth 2
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v6, v2, 14, v3
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v5, 0
	s_mov_b32 s9, -1
	s_mov_b32 s10, 0
.LBB7_3:                                ;   Parent Loop BB7_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v7, s10, v6
	s_mov_b32 s10, 0x540000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v8, 31, v7
	v_lshlrev_b64 v[7:8], 3, v[7:8]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v7, vcc_lo, s4, v7
	v_add_co_ci_u32_e32 v8, vcc_lo, s5, v8, vcc_lo
	s_and_not1_b32 vcc_lo, exec_lo, s9
	s_mov_b32 s9, 0
	s_clause 0x1
	global_load_b64 v[9:10], v[7:8], off
	global_load_b64 v[7:8], v[7:8], off offset:256
	s_waitcnt vmcnt(1)
	v_dual_fmac_f32 v4, v9, v9 :: v_dual_fmac_f32 v5, v10, v10
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1)
	v_dual_fmac_f32 v4, v7, v7 :: v_dual_fmac_f32 v5, v8, v8
	s_cbranch_vccz .LBB7_3
; %bb.4:                                ;   in Loop: Header=BB7_2 Depth=1
	v_mul_lo_u32 v6, v2, 27
	v_add_nc_u32_e32 v2, s7, v2
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v4, v5, v4
	v_cmp_lt_u32_e32 vcc_lo, 0x14f, v2
	s_delay_alu instid0(VALU_DEP_4)
	v_add_lshl_u32 v6, v6, v1, 2
	s_or_b32 s8, vcc_lo, s8
	ds_store_b32 v6, v4
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB7_2
.LBB7_5:                                ; %Flow86
	s_or_b32 exec_lo, exec_lo, s6
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_mov_b32 s4, exec_lo
	v_cmpx_gt_u32_e32 0x237, v0
	s_cbranch_execz .LBB7_9
; %bb.6:
	v_dual_mov_b32 v1, 0 :: v_dual_lshlrev_b32 v2, 6, v0
	s_mov_b32 s4, 0
.LBB7_7:                                ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v3, s4, v2
	s_add_i32 s4, s4, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s4, 64
	ds_load_b32 v3, v3
	s_waitcnt lgkmcnt(0)
	v_add_f32_e32 v1, v1, v3
	s_cbranch_scc0 .LBB7_7
; %bb.8:
	s_clause 0x1
	s_load_b128 s[4:7], s[0:1], 0x18
	s_load_b32 s0, s[0:1], 0x10
	v_sub_nc_u32_e32 v2, 0x236, v0
	s_waitcnt lgkmcnt(0)
	s_sext_i32_i16 s0, s0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s15, s15, s0
	v_sub_nc_u32_e32 v0, s15, v0
	v_mov_b32_e32 v3, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[4:5], 2, v[2:3]
	v_add_co_u32 v6, vcc_lo, s4, v4
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v7, vcc_lo, s5, v5, vcc_lo
	v_add_co_u32 v4, vcc_lo, s6, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s7, v5, vcc_lo
	global_load_b32 v2, v[6:7], off
	global_load_b32 v4, v[4:5], off
	s_waitcnt vmcnt(1)
	v_dual_sub_f32 v1, v1, v2 :: v_dual_add_nc_u32 v2, 0x236, v0
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmaak_f32 v1, v1, v4, 0x42810000
	v_ceil_f32_e32 v1, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_i32_f32_e32 v4, v1
	v_max_i32_e32 v1, 0, v4
	v_cmp_gt_i32_e32 vcc_lo, 0x100, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cvt_f32_ubyte0_e32 v5, v1
	v_lshlrev_b64 v[0:1], 2, v[2:3]
	v_cndmask_b32_e32 v2, 0x437f0000, v5, vcc_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_u32 v0, vcc_lo, s2, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, s3, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB7_9:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
		.amdhsa_group_segment_fixed_size 36288
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 296
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 11
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end7:
	.size	_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end7-_Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 596
; NumSgprs: 18
; NumVgprs: 11
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 36288 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 11
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_ ; -- Begin function _Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.globl	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
	.p2align	8
	.type	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_,@function
_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_: ; @_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
; %bb.0:
	s_load_b64 s[2:3], s[0:1], 0x8
	v_and_b32_e32 v1, 31, v0
	s_mov_b32 s6, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e32 27, v1
	s_cbranch_execz .LBB8_5
; %bb.1:                                ; %.lr.ph
	s_clause 0x1
	s_load_b32 s7, s[0:1], 0x34
	s_load_b64 s[4:5], s[0:1], 0x0
	v_add_nc_u32_e32 v3, 19, v0
	s_lshl_b32 s8, s15, 6
	v_lshrrev_b32_e32 v2, 5, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_and_or_b32 v3, v3, 31, s8
	s_mov_b32 s8, 0
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s7, s7, 0xb0005
.LBB8_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB8_3 Depth 2
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v6, v2, 14, v3
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v5, 0
	s_mov_b32 s9, -1
	s_mov_b32 s10, 0
.LBB8_3:                                ;   Parent Loop BB8_2 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v7, s10, v6
	s_mov_b32 s10, 0x540000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v8, 31, v7
	v_lshlrev_b64 v[7:8], 3, v[7:8]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v7, vcc_lo, s4, v7
	v_add_co_ci_u32_e32 v8, vcc_lo, s5, v8, vcc_lo
	s_and_not1_b32 vcc_lo, exec_lo, s9
	s_mov_b32 s9, 0
	s_clause 0x1
	global_load_b64 v[9:10], v[7:8], off
	global_load_b64 v[7:8], v[7:8], off offset:256
	s_waitcnt vmcnt(1)
	v_dual_fmac_f32 v4, v9, v9 :: v_dual_fmac_f32 v5, v10, v10
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1)
	v_dual_fmac_f32 v4, v7, v7 :: v_dual_fmac_f32 v5, v8, v8
	s_cbranch_vccz .LBB8_3
; %bb.4:                                ;   in Loop: Header=BB8_2 Depth=1
	v_mul_lo_u32 v6, v2, 27
	v_add_nc_u32_e32 v2, s7, v2
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v4, v5, v4
	v_cmp_lt_u32_e32 vcc_lo, 0x14f, v2
	s_delay_alu instid0(VALU_DEP_4)
	v_add_lshl_u32 v6, v6, v1, 2
	s_or_b32 s8, vcc_lo, s8
	ds_store_b32 v6, v4
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB8_2
.LBB8_5:                                ; %Flow87
	s_or_b32 exec_lo, exec_lo, s6
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_mov_b32 s4, exec_lo
	v_cmpx_gt_u32_e32 0x200, v0
	s_cbranch_execz .LBB8_9
; %bb.6:
	v_lshl_add_u32 v2, v0, 6, 0x700
	v_mov_b32_e32 v1, 0
	s_mov_b32 s4, 0
.LBB8_7:                                ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v3, s4, v2
	s_add_i32 s4, s4, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s4, 64
	ds_load_b32 v3, v3
	s_waitcnt lgkmcnt(0)
	v_add_f32_e32 v1, v1, v3
	s_cbranch_scc0 .LBB8_7
; %bb.8:
	s_load_b128 s[4:7], s[0:1], 0x18
	v_xor_b32_e32 v0, 0x1ff, v0
	s_load_b32 s0, s[0:1], 0x10
	s_delay_alu instid0(VALU_DEP_1)
	v_lshlrev_b32_e32 v2, 2, v0
	s_waitcnt lgkmcnt(0)
	s_clause 0x1
	global_load_b32 v3, v2, s[4:5]
	global_load_b32 v2, v2, s[6:7]
	s_sext_i32_i16 s0, s0
	s_waitcnt vmcnt(1)
	v_sub_f32_e32 v1, v1, v3
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmaak_f32 v1, v1, v2, 0x42810000
	v_ceil_f32_e32 v1, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_3)
	v_cvt_i32_f32_e32 v3, v1
	v_mad_u64_u32 v[1:2], null, s15, s0, v[0:1]
	v_mov_b32_e32 v2, 0
	v_max_i32_e32 v0, 0, v3
	v_cmp_gt_i32_e32 vcc_lo, 0x100, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_cvt_f32_ubyte0_e32 v4, v0
	v_lshlrev_b64 v[0:1], 2, v[1:2]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v2, 0x437f0000, v4, vcc_lo
	v_add_co_u32 v0, vcc_lo, s2, v0
	s_delay_alu instid0(VALU_DEP_3)
	v_add_co_ci_u32_e32 v1, vcc_lo, s3, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB8_9:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
		.amdhsa_group_segment_fixed_size 36288
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 296
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 11
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end8:
	.size	_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_, .Lfunc_end8-_Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 564
; NumSgprs: 18
; NumVgprs: 11
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 36288 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 11
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj ; -- Begin function _Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.globl	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
	.p2align	8
	.type	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj,@function
_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj: ; @_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
; %bb.0:
	s_load_b128 s[4:7], s[0:1], 0x10
	s_mov_b32 s2, 0
	s_waitcnt lgkmcnt(0)
	s_cmp_eq_u32 s6, 0
	s_cbranch_scc1 .LBB9_7
; %bb.1:                                ; %.lr.ph96
	s_load_b128 s[8:11], s[0:1], 0x0
	v_mad_u64_u32 v[1:2], null, 0xbd, s15, v[0:1]
	s_cmp_lg_u32 s5, 0
	v_mov_b32_e32 v4, 0
	s_cselect_b32 s0, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cndmask_b32_e64 v5, 0, 1, s0
	v_mad_u64_u32 v[2:3], null, 0x700, s15, v[0:1]
	s_delay_alu instid0(VALU_DEP_2)
	v_cmp_ne_u32_e64 s0, 1, v5
.LBB9_2:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB9_3 Depth 2
                                        ;       Child Loop BB9_4 Depth 3
	s_delay_alu instid0(VALU_DEP_1)
	v_mad_u64_u32 v[5:6], null, 0x2370, s2, v[1:2]
	v_mov_b32_e32 v0, v2
	s_mov_b32 s1, 0
.LBB9_3:                                ;   Parent Loop BB9_2 Depth=1
                                        ; =>  This Loop Header: Depth=2
                                        ;       Child Loop BB9_4 Depth 3
	s_delay_alu instid0(VALU_DEP_2) | instid1(SALU_CYCLE_1)
	v_mad_u64_u32 v[6:7], null, s1, 27, v[5:6]
	s_mov_b32 s3, s5
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_dual_mov_b32 v14, v0 :: v_dual_add_nc_u32 v3, s4, v6
	v_ashrrev_i32_e32 v7, 31, v6
	v_lshlrev_b64 v[8:9], 2, v[3:4]
	v_add_nc_u32_e32 v3, s4, v3
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[6:7], 2, v[6:7]
	v_lshlrev_b64 v[10:11], 2, v[3:4]
	v_add_nc_u32_e32 v3, s4, v3
	s_waitcnt lgkmcnt(0)
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)
	v_add_co_u32 v6, vcc_lo, s10, v6
	v_add_co_ci_u32_e32 v7, vcc_lo, s11, v7, vcc_lo
	v_add_co_u32 v8, vcc_lo, s10, v8
	v_lshlrev_b64 v[12:13], 2, v[3:4]
	v_add_co_ci_u32_e32 v9, vcc_lo, s11, v9, vcc_lo
	v_add_co_u32 v10, vcc_lo, s10, v10
	v_add_co_ci_u32_e32 v11, vcc_lo, s11, v11, vcc_lo
	s_delay_alu instid0(VALU_DEP_4)
	v_add_co_u32 v12, vcc_lo, s10, v12
	v_add_co_ci_u32_e32 v13, vcc_lo, s11, v13, vcc_lo
	s_and_b32 vcc_lo, exec_lo, s0
	s_clause 0x3
	global_store_b32 v[6:7], v4, off
	global_store_b32 v[8:9], v4, off
	global_store_b32 v[10:11], v4, off
	global_store_b32 v[12:13], v4, off
	s_cbranch_vccnz .LBB9_5
.LBB9_4:                                ;   Parent Loop BB9_2 Depth=1
                                        ;     Parent Loop BB9_3 Depth=2
                                        ; =>    This Inner Loop Header: Depth=3
	v_ashrrev_i32_e32 v15, 31, v14
	s_add_i32 s3, s3, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_cmp_eq_u32 s3, 0
	v_lshlrev_b64 v[15:16], 3, v[14:15]
	v_add_nc_u32_e32 v14, 32, v14
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_u32 v15, vcc_lo, s8, v15
	v_add_co_ci_u32_e32 v16, vcc_lo, s9, v16, vcc_lo
	s_clause 0x1
	global_load_b64 v[17:18], v[15:16], off
	global_load_b64 v[15:16], v[15:16], off offset:1024
	global_load_b32 v3, v[6:7], off
	s_waitcnt vmcnt(1)
	v_dual_mul_f32 v19, v18, v18 :: v_dual_mul_f32 v20, v16, v16
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_fmac_f32 v19, v17, v17 :: v_dual_fmac_f32 v20, v15, v15
	v_add_f32_e32 v21, v19, v20
	v_sub_f32_e32 v19, v19, v20
	s_waitcnt vmcnt(0)
	s_delay_alu instid0(VALU_DEP_2)
	v_add_f32_e32 v3, v3, v21
	global_store_b32 v[6:7], v3, off
	global_load_b32 v3, v[8:9], off
	s_waitcnt vmcnt(0)
	v_add_f32_e32 v3, v3, v19
	v_mul_f32_e32 v19, v18, v16
	global_store_b32 v[8:9], v3, off
	global_load_b32 v3, v[10:11], off
	v_fmac_f32_e32 v19, v17, v15
	v_mul_f32_e32 v15, v18, v15
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_3)
	v_fma_f32 v15, v17, v16, -v15
	s_waitcnt vmcnt(0)
	v_fmac_f32_e32 v3, 2.0, v19
	global_store_b32 v[10:11], v3, off
	global_load_b32 v3, v[12:13], off
	s_waitcnt vmcnt(0)
	v_fmac_f32_e32 v3, 2.0, v15
	global_store_b32 v[12:13], v3, off
	s_cbranch_scc0 .LBB9_4
.LBB9_5:                                ; %._crit_edge
                                        ;   in Loop: Header=BB9_3 Depth=2
	v_add_nc_u32_e32 v0, 0x100, v0
	s_add_i32 s1, s1, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s1, 7
	s_cbranch_scc0 .LBB9_3
; %bb.6:                                ;   in Loop: Header=BB9_2 Depth=1
	v_add_nc_u32_e32 v2, 0x15000, v2
	s_add_i32 s2, s2, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s2, s6
	s_cbranch_scc0 .LBB9_2
.LBB9_7:                                ; %._crit_edge97
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 28
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 22
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end9:
	.size	_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj, .Lfunc_end9-_Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 580
; NumSgprs: 18
; NumVgprs: 22
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 2
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 22
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z21GetScaleFactorsKernelPfS_S_S_ii ; -- Begin function _Z21GetScaleFactorsKernelPfS_S_S_ii
	.globl	_Z21GetScaleFactorsKernelPfS_S_S_ii
	.p2align	8
	.type	_Z21GetScaleFactorsKernelPfS_S_S_ii,@function
_Z21GetScaleFactorsKernelPfS_S_S_ii:    ; @_Z21GetScaleFactorsKernelPfS_S_S_ii
; %bb.0:
	s_clause 0x1
	s_load_b256 s[4:11], s[0:1], 0x0
	s_load_b64 s[0:1], s[0:1], 0x20
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v3, 0
	v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v1, v0
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_add_u32 s10, s10, 4
	s_addc_u32 s11, s11, 0
.LBB10_1:                               ; =>This Inner Loop Header: Depth=1
	v_lshlrev_b64 v[5:6], 2, v[1:2]
	s_add_u32 s12, s10, s2
	s_addc_u32 s13, s11, s3
	s_add_u32 s2, s2, 4
	s_load_b32 s12, s[12:13], 0x0
	s_addc_u32 s3, s3, 0
	v_add_co_u32 v5, vcc_lo, s4, v5
	v_add_co_ci_u32_e32 v6, vcc_lo, s5, v6, vcc_lo
	s_cmpk_eq_i32 s2, 0x400
	v_add_nc_u32_e32 v1, s0, v1
	global_load_b32 v5, v[5:6], off
	s_waitcnt vmcnt(0)
	v_sub_f32_e32 v6, v5, v4
	s_waitcnt lgkmcnt(0)
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v4, s12, v6
	v_sub_f32_e32 v5, v5, v4
	s_delay_alu instid0(VALU_DEP_1)
	v_fmac_f32_e32 v3, v6, v5
	s_cbranch_scc0 .LBB10_1
; %bb.2:
	v_lshlrev_b32_e32 v2, 2, v0
	v_cvt_f64_i32_e32 v[0:1], s1
	v_cvt_f32_i32_e32 v7, s1
	s_clause 0x1
	global_load_b32 v5, v2, s[6:7]
	global_load_b32 v6, v2, s[8:9]
	v_add_f64 v[0:1], 0x40700000, v[0:1]
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cvt_f32_f64_e32 v0, v[0:1]
	s_waitcnt vmcnt(0)
	v_dual_sub_f32 v1, v4, v5 :: v_dual_mul_f32 v6, v6, v6
	v_mul_f32_e32 v4, v1, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_mul_f32 v1, 0x43800000, v1 :: v_dual_mul_f32 v4, 0x43800000, v4
	v_div_scale_f32 v8, null, v0, v0, v1
	v_div_scale_f32 v14, vcc_lo, v1, v0, v1
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_1) | instid1(VALU_DEP_4)
	v_mul_f32_e32 v4, v4, v7
	v_add_f32_e32 v7, -1.0, v7
	v_rcp_f32_e32 v10, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_fmac_f32_e32 v3, v7, v6
	v_div_scale_f32 v9, null, v0, v0, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(VALU_DEP_2)
	v_rcp_f32_e32 v11, v9
	s_waitcnt_depctr 0xfff
	v_fma_f32 v12, -v8, v10, 1.0
	v_fma_f32 v13, -v9, v11, 1.0
	v_fmac_f32_e32 v10, v12, v10
	v_div_scale_f32 v12, s0, v4, v0, v4
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_fmac_f32_e32 v11, v13, v11
	v_mul_f32_e32 v13, v14, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v16, -v8, v13, v14
	v_fmac_f32_e32 v13, v16, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v8, -v8, v13, v14
	v_div_fmas_f32 v8, v8, v10, v13
	s_mov_b32 vcc_lo, s0
	s_add_i32 s0, s1, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_i32_e32 v10, s0
	v_dual_mul_f32 v15, v12, v11 :: v_dual_add_f32 v6, -1.0, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v17, -v9, v15, v12
	v_fmac_f32_e32 v15, v17, v11
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v9, -v9, v15, v12
	v_div_fmas_f32 v9, v9, v11, v15
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_div_fixup_f32 v4, v9, v0, v4
	v_div_fixup_f32 v0, v8, v0, v1
	v_add_f32_e32 v3, v3, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v0, v5, v0
	v_div_scale_f32 v4, null, v6, v6, v3
	v_div_scale_f32 v10, vcc_lo, v3, v6, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_f32_e32 v7, v4
	s_waitcnt_depctr 0xfff
	v_fma_f32 v9, -v4, v7, 1.0
	v_fmac_f32_e32 v7, v9, v7
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mul_f32_e32 v9, v10, v7
	v_fma_f32 v11, -v4, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v9, v11, v7
	v_fma_f32 v4, -v4, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_div_fmas_f32 v4, v4, v7, v9
	v_div_fixup_f32 v3, v4, v6, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_mul_f32_e32 v4, 0x4f800000, v3
	v_cmp_gt_f32_e32 vcc_lo, 0xf800000, v3
	v_cndmask_b32_e32 v3, v3, v4, vcc_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(VALU_DEP_2)
	v_sqrt_f32_e32 v4, v3
	s_waitcnt_depctr 0xfff
	v_add_nc_u32_e32 v6, -1, v4
	v_add_nc_u32_e32 v7, 1, v4
	v_fma_f32 v9, -v6, v4, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_fma_f32 v10, -v7, v4, v3
	v_cmp_ge_f32_e64 s0, 0, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cndmask_b32_e64 v4, v4, v6, s0
	v_cmp_lt_f32_e64 s0, 0, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cndmask_b32_e64 v4, v4, v7, s0
	v_mul_f32_e32 v6, 0x37800000, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v1, v4, v6, vcc_lo
	v_cmp_class_f32_e64 vcc_lo, v3, 0x260
	v_cndmask_b32_e32 v1, v1, v3, vcc_lo
	s_clause 0x1
	global_store_b32 v2, v0, s[6:7]
	global_store_b32 v2, v1, s[8:9]
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z21GetScaleFactorsKernelPfS_S_S_ii
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 40
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 18
		.amdhsa_next_free_sgpr 14
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end10:
	.size	_Z21GetScaleFactorsKernelPfS_S_S_ii, .Lfunc_end10-_Z21GetScaleFactorsKernelPfS_S_S_ii
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 724
; NumSgprs: 16
; NumVgprs: 18
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 1
; VGPRBlocks: 2
; NumSGPRsForWavesPerEU: 16
; NumVGPRsForWavesPerEU: 18
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z24GetScaleFactorsDivKernelPfS_S_ii ; -- Begin function _Z24GetScaleFactorsDivKernelPfS_S_ii
	.globl	_Z24GetScaleFactorsDivKernelPfS_S_ii
	.p2align	8
	.type	_Z24GetScaleFactorsDivKernelPfS_S_ii,@function
_Z24GetScaleFactorsDivKernelPfS_S_ii:   ; @_Z24GetScaleFactorsDivKernelPfS_S_ii
; %bb.0:
	s_load_b256 s[0:7], s[0:1], 0x0
	v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v1, v0
	v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0
	s_mov_b32 s8, 1
.LBB11_1:                               ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[5:6], 2, v[1:2]
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v1, s6, v1
	v_add_co_u32 v5, vcc_lo, s0, v5
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	v_add_co_ci_u32_e32 v6, vcc_lo, s1, v6, vcc_lo
	global_load_b32 v5, v[5:6], off
	v_cvt_f32_i32_e32 v6, s8
	s_add_i32 s8, s8, 1
	s_cmpk_eq_i32 s8, 0x101
	s_waitcnt vmcnt(0)
	v_sub_f32_e32 v7, v5, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_div_scale_f32 v8, null, v6, v6, v7
	v_div_scale_f32 v11, vcc_lo, v7, v6, v7
	v_rcp_f32_e32 v9, v8
	s_waitcnt_depctr 0xfff
	v_fma_f32 v10, -v8, v9, 1.0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v9, v10, v9
	v_mul_f32_e32 v10, v11, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v12, -v8, v10, v11
	v_fmac_f32_e32 v10, v12, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v8, -v8, v10, v11
	v_div_fmas_f32 v8, v8, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_div_fixup_f32 v6, v8, v6, v7
	v_add_f32_e32 v4, v4, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_sub_f32_e32 v5, v5, v4
	v_fmac_f32_e32 v3, v7, v5
	s_cbranch_scc0 .LBB11_1
; %bb.2:
	v_lshlrev_b32_e32 v2, 2, v0
	v_cvt_f64_i32_e32 v[0:1], s7
	v_cvt_f32_i32_e32 v7, s7
	s_clause 0x1
	global_load_b32 v5, v2, s[2:3]
	global_load_b32 v6, v2, s[4:5]
	v_add_f64 v[0:1], 0x40700000, v[0:1]
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cvt_f32_f64_e32 v0, v[0:1]
	s_waitcnt vmcnt(0)
	v_dual_sub_f32 v1, v4, v5 :: v_dual_mul_f32 v6, v6, v6
	v_mul_f32_e32 v4, v1, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_mul_f32 v1, 0x43800000, v1 :: v_dual_mul_f32 v4, 0x43800000, v4
	v_div_scale_f32 v8, null, v0, v0, v1
	v_div_scale_f32 v14, vcc_lo, v1, v0, v1
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_1) | instid1(VALU_DEP_4)
	v_mul_f32_e32 v4, v4, v7
	v_add_f32_e32 v7, -1.0, v7
	v_rcp_f32_e32 v10, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_fmac_f32_e32 v3, v7, v6
	v_div_scale_f32 v9, null, v0, v0, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(VALU_DEP_2)
	v_rcp_f32_e32 v11, v9
	s_waitcnt_depctr 0xfff
	v_fma_f32 v12, -v8, v10, 1.0
	v_fma_f32 v13, -v9, v11, 1.0
	v_fmac_f32_e32 v10, v12, v10
	v_div_scale_f32 v12, s0, v4, v0, v4
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_fmac_f32_e32 v11, v13, v11
	v_mul_f32_e32 v13, v14, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v16, -v8, v13, v14
	v_fmac_f32_e32 v13, v16, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v8, -v8, v13, v14
	v_div_fmas_f32 v8, v8, v10, v13
	s_mov_b32 vcc_lo, s0
	s_add_i32 s0, s7, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_i32_e32 v10, s0
	v_dual_mul_f32 v15, v12, v11 :: v_dual_add_f32 v6, -1.0, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v17, -v9, v15, v12
	v_fmac_f32_e32 v15, v17, v11
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v9, -v9, v15, v12
	v_div_fmas_f32 v9, v9, v11, v15
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_div_fixup_f32 v4, v9, v0, v4
	v_div_fixup_f32 v0, v8, v0, v1
	v_add_f32_e32 v3, v3, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_f32_e32 v0, v5, v0
	v_div_scale_f32 v4, null, v6, v6, v3
	v_div_scale_f32 v10, vcc_lo, v3, v6, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_f32_e32 v7, v4
	s_waitcnt_depctr 0xfff
	v_fma_f32 v9, -v4, v7, 1.0
	v_fmac_f32_e32 v7, v9, v7
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mul_f32_e32 v9, v10, v7
	v_fma_f32 v11, -v4, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v9, v11, v7
	v_fma_f32 v4, -v4, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_div_fmas_f32 v4, v4, v7, v9
	v_div_fixup_f32 v3, v4, v6, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_mul_f32_e32 v4, 0x4f800000, v3
	v_cmp_gt_f32_e32 vcc_lo, 0xf800000, v3
	v_cndmask_b32_e32 v3, v3, v4, vcc_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(VALU_DEP_2)
	v_sqrt_f32_e32 v4, v3
	s_waitcnt_depctr 0xfff
	v_add_nc_u32_e32 v6, -1, v4
	v_add_nc_u32_e32 v7, 1, v4
	v_fma_f32 v9, -v6, v4, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_fma_f32 v10, -v7, v4, v3
	v_cmp_ge_f32_e64 s0, 0, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cndmask_b32_e64 v4, v4, v6, s0
	v_cmp_lt_f32_e64 s0, 0, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cndmask_b32_e64 v4, v4, v7, s0
	v_mul_f32_e32 v6, 0x37800000, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v1, v4, v6, vcc_lo
	v_cmp_class_f32_e64 vcc_lo, v3, 0x260
	v_cndmask_b32_e32 v1, v1, v3, vcc_lo
	s_clause 0x1
	global_store_b32 v2, v0, s[2:3]
	global_store_b32 v2, v1, s[4:5]
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z24GetScaleFactorsDivKernelPfS_S_ii
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 32
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 18
		.amdhsa_next_free_sgpr 9
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end11:
	.size	_Z24GetScaleFactorsDivKernelPfS_S_ii, .Lfunc_end11-_Z24GetScaleFactorsDivKernelPfS_S_ii
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 784
; NumSgprs: 11
; NumVgprs: 18
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 1
; VGPRBlocks: 2
; NumSGPRsForWavesPerEU: 11
; NumVGPRsForWavesPerEU: 18
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.protected	_Z27GetScaleFactorsDoubleKernelPfS_S_i ; -- Begin function _Z27GetScaleFactorsDoubleKernelPfS_S_i
	.globl	_Z27GetScaleFactorsDoubleKernelPfS_S_i
	.p2align	8
	.type	_Z27GetScaleFactorsDoubleKernelPfS_S_i,@function
_Z27GetScaleFactorsDoubleKernelPfS_S_i: ; @_Z27GetScaleFactorsDoubleKernelPfS_S_i
; %bb.0:
	s_clause 0x1
	s_load_b128 s[4:7], s[0:1], 0x0
	s_load_b64 s[2:3], s[0:1], 0x10
	v_dual_mov_b32 v2, 0 :: v_dual_lshlrev_b32 v1, 2, v0
	s_load_b32 s0, s[0:1], 0x18
	s_movk_i32 s1, 0xff
	s_waitcnt lgkmcnt(0)
	global_load_b32 v3, v1, s[4:5]
	v_add_nc_u32_e32 v1, s0, v0
.LBB12_1:                               ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_lshlrev_b64 v[4:5], 2, v[1:2]
	v_add_nc_u32_e32 v1, s0, v1
	s_add_i32 s1, s1, -1
	s_cmp_eq_u32 s1, 0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_u32 v4, vcc_lo, s4, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	global_load_b32 v4, v[4:5], off
	s_waitcnt vmcnt(0)
	v_add_f32_e32 v3, v3, v4
	s_cbranch_scc0 .LBB12_1
; %bb.2:
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_dual_mov_b32 v1, 0 :: v_dual_mul_f32 v4, 0x3b800000, v3
	v_lshlrev_b32_e32 v2, 2, v0
	s_movk_i32 s1, 0x100
	v_mov_b32_e32 v3, v1
	global_store_b32 v2, v4, s[6:7]
.LBB12_3:                               ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_lshlrev_b64 v[5:6], 2, v[0:1]
	s_add_i32 s1, s1, -1
	s_cmp_eq_u32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v5, vcc_lo, s4, v5
	v_add_co_ci_u32_e32 v6, vcc_lo, s5, v6, vcc_lo
	global_load_b32 v5, v[5:6], off
	s_waitcnt vmcnt(0)
	v_sub_f32_e32 v5, v5, v4
	s_delay_alu instid0(VALU_DEP_1)
	v_dual_fmac_f32 v3, v5, v5 :: v_dual_add_nc_u32 v0, s0, v0
	s_cbranch_scc0 .LBB12_3
; %bb.4:
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_div_scale_f32 v0, null, 0x42fe0000, 0x42fe0000, v3
	v_div_scale_f32 v5, vcc_lo, v3, 0x42fe0000, v3
	v_rcp_f32_e32 v1, v0
	s_waitcnt_depctr 0xfff
	v_fma_f32 v4, -v0, v1, 1.0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v1, v4, v1
	v_mul_f32_e32 v4, v5, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v6, -v0, v4, v5
	v_fmac_f32_e32 v4, v6, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fma_f32 v0, -v0, v4, v5
	v_div_fmas_f32 v0, v0, v1, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_div_fixup_f32 v0, v0, 0x42fe0000, v3
	v_mul_f32_e32 v1, 0x4f800000, v0
	v_cmp_gt_f32_e32 vcc_lo, 0xf800000, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cndmask_b32_e32 v0, v0, v1, vcc_lo
	v_sqrt_f32_e32 v1, v0
	s_waitcnt_depctr 0xfff
	v_add_nc_u32_e32 v3, -1, v1
	v_add_nc_u32_e32 v4, 1, v1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_fma_f32 v5, -v3, v1, v0
	v_fma_f32 v6, -v4, v1, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_f32_e64 s0, 0, v5
	v_cndmask_b32_e64 v1, v1, v3, s0
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_lt_f32_e64 s0, 0, v6
	v_cndmask_b32_e64 v1, v1, v4, s0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mul_f32_e32 v3, 0x37800000, v1
	v_cndmask_b32_e32 v1, v1, v3, vcc_lo
	v_cmp_class_f32_e64 vcc_lo, v0, 0x260
	s_delay_alu instid0(VALU_DEP_2)
	v_cndmask_b32_e32 v0, v1, v0, vcc_lo
	global_store_b32 v2, v0, s[2:3]
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z27GetScaleFactorsDoubleKernelPfS_S_i
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 28
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 7
		.amdhsa_next_free_sgpr 8
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.text
.Lfunc_end12:
	.size	_Z27GetScaleFactorsDoubleKernelPfS_S_i, .Lfunc_end12-_Z27GetScaleFactorsDoubleKernelPfS_S_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 484
; NumSgprs: 10
; NumVgprs: 7
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 1
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 10
; NumVGPRsForWavesPerEU: 7
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
; %bb.0:
	s_load_b128 s[4:7], s[0:1], 0x10
	s_lshl_b32 s2, s15, 8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s2, s6
	s_addc_u32 s3, 0, s7
	s_sub_u32 s4, s4, s2
	s_subb_u32 s5, s5, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u64_e64 s5, 0x100, s[4:5]
	s_and_b32 s5, s5, exec_lo
	s_cselect_b32 s4, s4, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cmp_gt_u32_e32 vcc_lo, s4, v0
	s_cmpk_eq_i32 s4, 0x100
	s_cselect_b32 s4, -1, 0
	s_or_b32 s4, s4, vcc_lo
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB13_2
; %bb.1:                                ; %.critedge24.sink.split
	s_clause 0x1
	s_load_b64 s[4:5], s[0:1], 0x0
	s_load_b32 s0, s[0:1], 0x8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s1, s4, s2
	s_addc_u32 s2, s5, s3
	v_add_co_u32 v0, s1, s1, v0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, null, s2, 0, s1
	v_mov_b32_e32 v2, s0
	flat_store_b8 v[0:1], v2
.LBB13_2:                               ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 32
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 3
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_,comdat
.Lfunc_end13:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_, .Lfunc_end13-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 160
; NumSgprs: 18
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 3
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
; %bb.0:
	s_load_b128 s[4:7], s[0:1], 0x10
	s_lshl_b32 s2, s15, 8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s2, s6
	s_addc_u32 s3, 0, s7
	s_sub_u32 s4, s4, s2
	s_subb_u32 s5, s5, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u64_e64 s5, 0x100, s[4:5]
	s_and_b32 s5, s5, exec_lo
	s_cselect_b32 s4, s4, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cmp_gt_u32_e32 vcc_lo, s4, v0
	s_cmpk_eq_i32 s4, 0x100
	s_cselect_b32 s4, -1, 0
	s_or_b32 s4, s4, vcc_lo
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB14_2
; %bb.1:                                ; %.critedge24.sink.split
	s_load_b128 s[4:7], s[0:1], 0x0
	v_lshlrev_b32_e32 v2, 3, v0
	s_lshl_b64 s[0:1], s[2:3], 3
	s_waitcnt lgkmcnt(0)
	v_mov_b32_e32 v1, s7
	s_add_u32 s0, s4, s0
	s_addc_u32 s1, s5, s1
	v_add_co_u32 v2, s0, s0, v2
	v_mov_b32_e32 v0, s6
	v_add_co_ci_u32_e64 v3, null, s1, 0, s0
	flat_store_b64 v[2:3], v[0:1]
.LBB14_2:                               ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 32
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 4
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_,comdat
.Lfunc_end14:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_, .Lfunc_end14-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 156
; NumSgprs: 18
; NumVgprs: 4
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 4
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
; %bb.0:
	s_load_b128 s[4:7], s[0:1], 0x10
	s_lshl_b32 s2, s15, 8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s2, s6
	s_addc_u32 s3, 0, s7
	s_sub_u32 s4, s4, s2
	s_subb_u32 s5, s5, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u64_e64 s5, 0x100, s[4:5]
	s_and_b32 s5, s5, exec_lo
	s_cselect_b32 s4, s4, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cmp_gt_u32_e32 vcc_lo, s4, v0
	s_cmpk_eq_i32 s4, 0x100
	s_cselect_b32 s4, -1, 0
	s_or_b32 s4, s4, vcc_lo
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB15_2
; %bb.1:                                ; %.critedge24.sink.split
	s_clause 0x1
	s_load_b64 s[4:5], s[0:1], 0x0
	s_load_b32 s6, s[0:1], 0x8
	v_lshlrev_b32_e32 v0, 2, v0
	s_lshl_b64 s[0:1], s[2:3], 2
	s_waitcnt lgkmcnt(0)
	s_add_u32 s0, s4, s0
	s_addc_u32 s1, s5, s1
	v_add_co_u32 v0, s0, s0, v0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, null, s1, 0, s0
	v_mov_b32_e32 v2, s6
	flat_store_b32 v[0:1], v2
.LBB15_2:                               ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 32
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 3
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_,comdat
.Lfunc_end15:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_, .Lfunc_end15-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 168
; NumSgprs: 18
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 3
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
; %bb.0:
	s_load_b256 s[0:7], s[0:1], 0x0
	s_lshl_b32 s8, s15, 8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s6, s8, s6
	s_addc_u32 s7, 0, s7
	s_sub_u32 s4, s4, s6
	s_subb_u32 s5, s5, s7
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_i64_e64 s5, 0x100, s[4:5]
	s_and_b32 s5, s5, exec_lo
	s_cselect_b32 s5, s4, 0x100
	s_mov_b32 s4, -1
	s_cmpk_lg_i32 s5, 0x100
	s_cbranch_scc0 .LBB16_4
; %bb.1:
	s_mov_b32 s4, exec_lo
	v_cmpx_gt_u32_e64 s5, v0
	s_cbranch_execz .LBB16_3
; %bb.2:
	v_add_co_u32 v1, s5, s6, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_ci_u32_e64 v2, null, s7, 0, s5
	v_clz_i32_u32_e32 v3, v2
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_min_u32_e32 v5, 32, v3
	v_lshlrev_b64 v[3:4], v5, v[1:2]
	v_lshlrev_b64 v[1:2], 2, v[1:2]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_min_u32_e32 v3, 1, v3
	v_add_co_u32 v1, vcc_lo, s0, v1
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_ci_u32_e32 v2, vcc_lo, s1, v2, vcc_lo
	v_or_b32_e32 v3, v4, v3
	v_sub_nc_u32_e32 v4, 32, v5
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_u32_e32 v3, v3
	v_ldexp_f32 v3, v3, v4
	s_delay_alu instid0(VALU_DEP_1)
	v_fma_f32 v3, s3, v3, s2
	flat_store_b32 v[1:2], v3
.LBB16_3:                               ; %Flow
	s_or_b32 exec_lo, exec_lo, s4
	s_mov_b32 s4, 0
.LBB16_4:                               ; %Flow35
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s4
	s_cbranch_vccnz .LBB16_6
; %bb.5:                                ; %.critedge
	v_add_co_u32 v0, s4, s6, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, null, s7, 0, s4
	v_clz_i32_u32_e32 v2, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_min_u32_e32 v4, 32, v2
	v_lshlrev_b64 v[2:3], v4, v[0:1]
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_min_u32_e32 v2, 1, v2
	v_add_co_u32 v0, vcc_lo, s0, v0
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_ci_u32_e32 v1, vcc_lo, s1, v1, vcc_lo
	v_or_b32_e32 v2, v3, v2
	v_sub_nc_u32_e32 v3, 32, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_u32_e32 v2, v2
	v_ldexp_f32 v2, v2, v3
	s_delay_alu instid0(VALU_DEP_1)
	v_fma_f32 v2, s3, v2, s2
	flat_store_b32 v[0:1], v2
.LBB16_6:                               ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 32
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 6
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_,comdat
.Lfunc_end16:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_, .Lfunc_end16-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 344
; NumSgprs: 18
; NumVgprs: 6
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 6
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
; %bb.0:
	s_load_b128 s[4:7], s[0:1], 0x18
	s_lshl_b32 s2, s15, 8
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s2, s6
	s_addc_u32 s3, 0, s7
	s_sub_u32 s4, s4, s2
	s_subb_u32 s5, s5, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_i64_e64 s5, 0x100, s[4:5]
	s_and_b32 s5, s5, exec_lo
	s_cselect_b32 s4, s4, 0x100
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cmp_gt_u32_e32 vcc_lo, s4, v0
	s_cmpk_eq_i32 s4, 0x100
	s_cselect_b32 s4, -1, 0
	s_or_b32 s4, s4, vcc_lo
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB17_2
; %bb.1:                                ; %.critedge24.sink.split
	s_load_b128 s[4:7], s[0:1], 0x0
	v_add_co_u32 v0, s0, s2, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, null, s3, 0, s0
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	s_waitcnt lgkmcnt(0)
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v2, vcc_lo, s4, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v1, vcc_lo
	flat_load_b32 v2, v[2:3]
	s_waitcnt vmcnt(0) lgkmcnt(0)
	v_div_scale_f32 v3, null, v2, v2, 1.0
	v_div_scale_f32 v6, vcc_lo, 1.0, v2, 1.0
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_f32_e32 v4, v3
	s_waitcnt_depctr 0xfff
	v_fma_f32 v5, -v3, v4, 1.0
	v_fmac_f32_e32 v4, v5, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mul_f32_e32 v5, v6, v4
	v_fma_f32 v7, -v3, v5, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_fmac_f32_e32 v5, v7, v4
	v_fma_f32 v3, -v3, v5, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_div_fmas_f32 v3, v3, v4, v5
	v_cmp_neq_f32_e32 vcc_lo, 0, v2
	v_div_fixup_f32 v3, v3, v2, 1.0
	s_delay_alu instid0(VALU_DEP_1)
	v_cndmask_b32_e32 v2, v2, v3, vcc_lo
	v_add_co_u32 v0, vcc_lo, s6, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, s7, v1, vcc_lo
	flat_store_b32 v[0:1], v2
.LBB17_2:                               ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 40
		.amdhsa_user_sgpr_count 15
		.amdhsa_user_sgpr_dispatch_ptr 0
		.amdhsa_user_sgpr_queue_ptr 0
		.amdhsa_user_sgpr_kernarg_segment_ptr 1
		.amdhsa_user_sgpr_dispatch_id 0
		.amdhsa_user_sgpr_private_segment_size 0
		.amdhsa_wavefront_size32 1
		.amdhsa_uses_dynamic_stack 0
		.amdhsa_enable_private_segment 0
		.amdhsa_system_sgpr_workgroup_id_x 1
		.amdhsa_system_sgpr_workgroup_id_y 0
		.amdhsa_system_sgpr_workgroup_id_z 0
		.amdhsa_system_sgpr_workgroup_info 0
		.amdhsa_system_vgpr_workitem_id 0
		.amdhsa_next_free_vgpr 8
		.amdhsa_next_free_sgpr 16
		.amdhsa_float_round_mode_32 0
		.amdhsa_float_round_mode_16_64 0
		.amdhsa_float_denorm_mode_32 3
		.amdhsa_float_denorm_mode_16_64 3
		.amdhsa_dx10_clamp 1
		.amdhsa_ieee_mode 1
		.amdhsa_fp16_overflow 0
		.amdhsa_workgroup_processor_mode 1
		.amdhsa_memory_ordered 1
		.amdhsa_forward_progress 0
		.amdhsa_shared_vgpr_count 0
		.amdhsa_exception_fp_ieee_invalid_op 0
		.amdhsa_exception_fp_denorm_src 0
		.amdhsa_exception_fp_ieee_div_zero 0
		.amdhsa_exception_fp_ieee_overflow 0
		.amdhsa_exception_fp_ieee_underflow 0
		.amdhsa_exception_fp_ieee_inexact 0
		.amdhsa_exception_int_div_zero 0
	.end_amdhsa_kernel
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_,comdat
.Lfunc_end17:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_, .Lfunc_end17-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 288
; NumSgprs: 18
; NumVgprs: 8
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 18
; NumVGPRsForWavesPerEU: 8
; Occupancy: 16
; WaveLimiterHint : 0
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 0
; COMPUTE_PGM_RSRC2:USER_SGPR: 15
; COMPUTE_PGM_RSRC2:TRAP_HANDLER: 0
; COMPUTE_PGM_RSRC2:TGID_X_EN: 1
; COMPUTE_PGM_RSRC2:TGID_Y_EN: 0
; COMPUTE_PGM_RSRC2:TGID_Z_EN: 0
; COMPUTE_PGM_RSRC2:TIDIG_COMP_CNT: 0
	.text
	.p2alignl 7, 3214868480
	.fill 96, 4, 3214868480
	.type	__hip_cuid_,@object             ; @__hip_cuid_
	.section	.bss,"aw",@nobits
	.globl	__hip_cuid_
__hip_cuid_:
	.byte	0                               ; 0x0
	.size	__hip_cuid_, 1

	.ident	"AMD clang version 18.0.0git (https://github.com/RadeonOpenCompute/llvm-project roc-6.3.2 25012 e5bf7e55c91490b07c49d8960fa7983d864936c4)"
	.section	".note.GNU-stack","",@progbits
	.addrsig
	.addrsig_sym __hip_cuid_
	.amdgpu_metadata
---
amdhsa.kernels:
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         28
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         32
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         36
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         38
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         40
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         42
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         44
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         46
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         88
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 280
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj
    .private_segment_fixed_size: 0
    .sgpr_count:     26
    .sgpr_spill_count: 0
    .symbol:         _Z19unpack_original_texP13__hip_textureP15HIP_vector_typeIfLj2EEj.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     15
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         20
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         28
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         30
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         32
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         34
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         36
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         38
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         56
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         80
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 7168
    .kernarg_segment_align: 8
    .kernarg_segment_size: 272
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z10unpack_newPKjP15HIP_vector_typeIfLj2EE
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z10unpack_newPKjP15HIP_vector_typeIfLj2EE.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     16
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         20
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         28
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         30
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         32
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         34
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         36
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         38
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         56
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         80
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 7168
    .kernarg_segment_align: 8
    .kernarg_segment_size: 272
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z15unpack_new_int2P15HIP_vector_typeIiLj2EEPS_IfLj2EE.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     16
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         20
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         28
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         30
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         32
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         34
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         36
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         38
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         56
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         80
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 8176
    .kernarg_segment_align: 8
    .kernarg_segment_size: 272
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z10unpack_altPKjP15HIP_vector_typeIfLj2EE
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z10unpack_altPKjP15HIP_vector_typeIfLj2EE.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     19
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  read_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         20
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         28
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         30
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         32
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         34
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         36
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         38
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         56
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         80
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 272
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf
    .private_segment_fixed_size: 0
    .sgpr_count:     10
    .sgpr_spill_count: 0
    .symbol:         _Z27powertimefreq_new_hardcodedP15HIP_vector_typeIfLj2EEPf.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     3
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           2
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         28
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         32
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         36
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         38
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         40
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         42
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         44
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         46
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         64
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         88
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 36288
    .kernarg_segment_align: 8
    .kernarg_segment_size: 280
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z19DetectScrunchKernelP15HIP_vector_typeIfLj2EEPfs.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     11
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           2
        .value_kind:     by_value
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         44
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         48
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         52
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         54
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         56
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         58
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         60
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         62
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         88
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         96
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         104
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 36288
    .kernarg_segment_align: 8
    .kernarg_segment_size: 296
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z24DetectScrunchScaleKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     11
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           2
        .value_kind:     by_value
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         44
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         48
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         52
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         54
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         56
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         58
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         60
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         62
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         88
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         96
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         104
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 36288
    .kernarg_segment_align: 8
    .kernarg_segment_size: 296
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z27DetectScrunchScaleRevKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     11
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .actual_access:  write_only
        .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           2
        .value_kind:     by_value
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         44
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         48
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         52
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         54
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         56
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         58
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         60
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         62
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         88
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         96
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         104
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 36288
    .kernarg_segment_align: 8
    .kernarg_segment_size: 296
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z29DetectScrunchScaleTruncKernelP15HIP_vector_typeIfLj2EEPfsS2_S2_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     11
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .actual_access:  read_only
        .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     by_value
      - .offset:         20
        .size:           4
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 28
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _Z21GetPowerAddTimeKernelP15HIP_vector_typeIfLj2EEPfjjj.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     22
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .offset:         32
        .size:           4
        .value_kind:     by_value
      - .offset:         36
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 40
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z21GetScaleFactorsKernelPfS_S_S_ii
    .private_segment_fixed_size: 0
    .sgpr_count:     16
    .sgpr_spill_count: 0
    .symbol:         _Z21GetScaleFactorsKernelPfS_S_S_ii.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     18
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .offset:         24
        .size:           4
        .value_kind:     by_value
      - .offset:         28
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 32
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z24GetScaleFactorsDivKernelPfS_S_ii
    .private_segment_fixed_size: 0
    .sgpr_count:     11
    .sgpr_spill_count: 0
    .symbol:         _Z24GetScaleFactorsDivKernelPfS_S_ii.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     18
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .offset:         24
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 28
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z27GetScaleFactorsDoubleKernelPfS_S_i
    .private_segment_fixed_size: 0
    .sgpr_count:     10
    .sgpr_spill_count: 0
    .symbol:         _Z27GetScaleFactorsDoubleKernelPfS_S_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     7
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .offset:         0
        .size:           16
        .value_kind:     by_value
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           8
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 32
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIhEEhEEmLj1EEEvT0_T1_S9_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     3
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .offset:         0
        .size:           16
        .value_kind:     by_value
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           8
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 32
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrI15HIP_vector_typeIfLj2EEEES7_EEmLj1EEEvT0_T1_SB_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     4
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .offset:         0
        .size:           16
        .value_kind:     by_value
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           8
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 32
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIfEEfEEmLj1EEEvT0_T1_S9_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     3
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .offset:         0
        .size:           16
        .value_kind:     by_value
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           8
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 32
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_10__tabulate7functorINS_6detail15normal_iteratorINS_10device_ptrIfEEEENS_6system6detail7generic6detail22compute_sequence_valueIfvEElEElLj1EEEvT0_T1_SI_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     6
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .offset:         0
        .size:           24
        .value_kind:     by_value
      - .offset:         24
        .size:           8
        .value_kind:     by_value
      - .offset:         32
        .size:           8
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 40
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_11__transform17unary_transform_fINS_6detail15normal_iteratorINS_10device_ptrIfEEEES9_NS3_14no_stencil_tagE13FactorFunctorNS3_21always_true_predicateEEElLj1EEEvT0_T1_SF_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     8
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
amdhsa.target:   amdgcn-amd-amdhsa--gfx1100
amdhsa.version:
  - 1
  - 2
...

	.end_amdgpu_metadata
