/*
Copyright (C) Muaaz Gul Awan and Fahad Saeed  
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
*/


#include<iostream>
#include<vector>
#include<stdlib.h>
#include<time.h>
#include<math.h>
#include<ctime>
#include<algorithm>
#include<utility>
#include <curand.h>
#include <curand_kernel.h>
#include<random>
#include <thrust/scan.h>
#include <thrust/device_vector.h>
#include <thrust/host_vector.h>

#include <string>
#include <fstream>

using namespace std;

#define elesPerBucket 20
#define sampleRate 10
//#define totArrays 10000
#define maxSize2 10000
//#define minSize 10000
#define SAMPLED (sampleRate*maxSize)/100
#define maxBuckets (maxSize/elesPerBucket)

inline
cudaError_t checkCuda(cudaError_t result)
{
#if defined(DEBUG) || defined(_DEBUG)
  if (result != cudaSuccess) {
    fprintf(stderr, "CUDA Runtime Error: %s\n", cudaGetErrorString(result));
    assert(result == cudaSuccess);
  }
#endif
  return result;
}

//swap function for Insertion sort
template <class type>
 __device__ void  swapD (type &a, type &b)

{
    /* &a and &b are reference variables */
    type temp;
        temp=a;
	a=b;
        b=temp;
}
//insertion sort
template <class type>
 __device__ void insertionSort(type *input, int begin, int end){
int i, j; //,tmp;
 for (i = begin+1; i < end; i++) {
 j = i;
 while (j > begin && input[j - 1] > input[j]) {
 swapD(input[j], input[j-1]);
 j--;
 }//end of while loop
}
}



__device__ void getMinMax(int input[], int beginPtr, int endPtr, int *ret){
          int min = input[beginPtr];
          int max = 0;
        // int *ret = new int[2];
          for(int i = beginPtr; i < endPtr; i++){
              if(min > input[i])
                  min = input[i];
              if (max < input[i])
                  max = input[i];     
            }

     ret[0] = min;
     ret[1] = max;
//return ret;

}

//data generation
template <typename mType>
struct dataArrays{
	vector<mType> dataList;
	int *prefixArray;
};


template <typename type> 
dataArrays<type> dataGen (int numOfArrays, int maxArraySize, int minArraySize){
	
   dataArrays<int> data;
   data.prefixArray = new int[numOfArrays+1]; //exclusive prefix scan
   const int range_from = 0;
   const unsigned int range_to = 5000;//2147483647; //2^31 - 1
   random_device rand_dev;
   mt19937 generator(rand_dev());
   uniform_int_distribution<int> distr(range_from, range_to);
   int prefixSum = 0;
   srand(time(0));
	for( int i = 0; i < numOfArrays; i++){
	
		int size = rand()%(maxArraySize-minArraySize + 1) + minArraySize;
		data.prefixArray[i] = prefixSum;
		for(int j = prefixSum; j < prefixSum + size; j++){
			data.dataList.push_back(distr(generator));
		}
		prefixSum += size;
	}
	
	data.prefixArray[numOfArrays] = prefixSum;
	return data;
}

//kernel for obtaining num of buckets for each array
__global__ void getNumOfBuckets(int *prefixSumArray, int *numOfBucketsArray, int totArrays){
	int id = blockIdx.x; // * blockDim.x + threadIdx.x;
	
	if(id < totArrays)
		numOfBucketsArray[id] = (prefixSumArray[id+1] - prefixSumArray[id])/elesPerBucket;
}

template <typename mType, int maxSize>
__device__ void getSplitters (mType *data, mType *splittersArray, int sample[], int beginPtr, int endPtr, int arraySize, int *prefixBucketsArray){
           __shared__ mType mySamples[SAMPLED];
		   
            //int *ret = new int[2];
			//int arraySize = endPtr - beginPtr;
			// calculating samples for this array
			int numOfSamples = ((float)sampleRate/100)*(arraySize);
			//calculating the number of buckets for this array
			int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
			
            for(int i = 0; i < numOfSamples; i++)
	           mySamples[i] = data[beginPtr+sample[i]];

	        insertionSort(mySamples, 0, numOfSamples);
	 
	        //calculate splitter index for this array 
            int splitterIndex = ((blockIdx.x == 0)? 1 : (prefixBucketsArray[blockIdx.x-1]+1))+1; //the other plus one is for leaving space for smallest splitter(added later)
            int splittersSize=0;
	        for(int i = (numOfSamples)/(numOfBuckets); splittersSize < numOfBuckets-1; i +=(numOfSamples)/(numOfBuckets)){
                 splittersArray[splitterIndex] = mySamples[i];
                 splitterIndex++;
                 splittersSize++;
             }
            //getMinMax(data, beginPtr, endPtr, ret);
			int bits = 8*sizeof(mType);
            mType min = -(1 << (bits-1));
            mType max = (1 << (bits - 1)) - 1;//int max =  (1 << (bits-1)) � 1;
            splittersArray[((blockIdx.x == 0)? 0 : (prefixBucketsArray[blockIdx.x-1]+1))] = min;//ret[0]-2;//to accodmodate the smallest
            splittersArray[((blockIdx.x == 0)? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x]))] = max;//ret[1]+2;
      
            //delete [] ret;
}

//kernel for obtaining splitters
template <typename mType, int maxSize>
__global__ void splitterKer(mType *data, mType *splittersArray, int *prefixSizeArray, int *prefixBucketsArray, int totArrays){
          if(blockIdx.x < totArrays){
             int id = blockIdx.x;
	         __shared__ int sampleSh[SAMPLED];
			 int arraySize = prefixSizeArray[id+1] - prefixSizeArray[id];
			// calculating samples for this array
			int numOfSamples = ((float)sampleRate/100)*(arraySize);
            //int *h_sample = new int[SAMPLED];
            int max = arraySize;
            int  sam = numOfSamples;
            int stride = max/sam;
	        int sampleVal = 0;
            for( int i = 0; i < numOfSamples; i++)
            {
               sampleSh[i] = sampleVal;
               sampleVal += stride; 
            }
			 
	        //for(int i = 0; i < numOfSamples; i++)
	           // sampleSh[i] = mySample[i];

	        getSplitters<mType, maxSize>(data, splittersArray, sampleSh, prefixSizeArray[id], prefixSizeArray[id+1], prefixSizeArray[id+1] - prefixSizeArray[id], prefixBucketsArray);

           }
        }

		
template <typename mType, int maxSize>
__device__ void getBuckets(mType *input, mType *splitters, int beginPtr, int endPtr, int *bucketsSize, mType *myInput, int *prefixBucketsArray, int totArrays){
     volatile int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
        
	if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
	  
	  int id = threadIdx.x;
	  int sizeOffset = (blockIdx.x == 0) ? (0+threadIdx.x) : (prefixBucketsArray[blockIdx.x-1] + threadIdx.x);  //blockIdx.x*BUCKETS+threadIdx.x;
	  int sizeOffsetBlock = (blockIdx.x == 0) ? (0) : (prefixBucketsArray[blockIdx.x-1]);
      int bucketSizeOff = sizeOffset+1;
      mType myBucket[maxSize]; //make it shared as well
     // int bucketIndexOffset;
      int indexSum=0;
      bucketsSize[bucketSizeOff] = 0;

     for(int i = 0; i < (endPtr - beginPtr); i++){
         if(myInput[i] > splitters[id] && myInput[i] <= splitters[id+1]){
         myBucket[bucketsSize[bucketSizeOff]] = myInput[i];
         bucketsSize[bucketSizeOff]++;

        }
     }
       
    __syncthreads();
     
         //prefix sum for bucket sizes of current array
     for(int j = 0; j < threadIdx.x; j++)
        indexSum += bucketsSize[sizeOffsetBlock+j+1];

         //writing back current buckt back to the input memory
	 for(int i = 0; i < bucketsSize[bucketSizeOff]; i++)
             input[indexSum+beginPtr+i] = myBucket[i];
	}
      

}
		
//kernel for obtaining buckets
template <typename mType, int maxSize>
__global__ void bucketKernel(mType *data, mType *splittersArray, int *prefixSizeArray, int *prefixBucketsArray, int *bucketSizes, int totArrays){
    
	int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
        
	if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
        bucketSizes[0] = 0;
		int bid = blockIdx.x;
        int tid = threadIdx.x;
		int arraySize = prefixSizeArray[blockIdx.x+1] - prefixSizeArray[blockIdx.x];
	    int leftOvers = arraySize%numOfBuckets;
        int jmpFac = arraySize/numOfBuckets;
        int gArrayStart = prefixSizeArray[blockIdx.x] + tid*jmpFac;
        int gArrayEnd = (tid==(numOfBuckets-1))?(gArrayStart + jmpFac+leftOvers):(gArrayStart + jmpFac);
        int lArrayStart = tid*jmpFac;
        __shared__ int myInput [maxSize];

        int arrBegin = prefixSizeArray[bid];
        int arrEnd = prefixSizeArray[bid+1];
		    
        int splitterIndexSt = ((blockIdx.x == 0)? 0 : (prefixBucketsArray[blockIdx.x-1]+1));//blockIdx.x*(BUCKETS+1);
        int splitterIndexEd = splitterIndexSt + numOfBuckets+1;
        __shared__ mType splitters[maxBuckets+2];
//copy my array in shared memory in parallel
        for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
            myInput[i] = data[j];
         }
        __syncthreads(); 
        int j = 0;
        for(int i = splitterIndexSt; i < splitterIndexEd; i++){
           splitters[j] = splittersArray[i];
           j++;
        }
       
	    getBuckets<mType, maxSize>(data, splitters, arrBegin, arrEnd, bucketSizes, myInput, prefixBucketsArray, totArrays);

	}
}		
		
		
		
//sorting kernel	
template <typename mType, int maxSize>	
__global__ void sortBuckets(mType *buckets, int *bucketsSize, int *prefixBucketsArray, int *prefixSizeArray, int totArrays){
	int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
     
	
       if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
		int sizeOffset = (blockIdx.x == 0) ? (0+threadIdx.x) : (prefixBucketsArray[blockIdx.x-1] + threadIdx.x); 
        int sizeOffsetBlock = (blockIdx.x == 0) ? (0) : (prefixBucketsArray[blockIdx.x-1]);
       // int bid = blockIdx.x;
        int tid = threadIdx.x;
		int arraySize = prefixSizeArray[blockIdx.x+1] - prefixSizeArray[blockIdx.x];
	    int leftOvers = arraySize%numOfBuckets;
        int jmpFac = arraySize/numOfBuckets;
        int gArrayStart = prefixSizeArray[blockIdx.x] + tid*jmpFac;
        int gArrayEnd = (tid==(numOfBuckets-1))?(gArrayStart + jmpFac+leftOvers):(gArrayStart + jmpFac);
        int lArrayStart = tid*jmpFac;
        //int lArrayEnd = (tid==(BUCKETS-1))?(lArrayStart + jmpFac+leftOvers):(lArrayStart + jmpFac);

        __shared__ mType myArray [maxSize];
        int indexSum = 0;
    

          for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
                 myArray[i] = buckets[j];
           
        }
        __syncthreads();
        //prefix sum for bucket sizes of current array
        
     	  for(int j = 0; j < threadIdx.x; j++)
              indexSum += bucketsSize[sizeOffsetBlock+j+1];

 
          insertionSort(myArray, indexSum,indexSum + bucketsSize[sizeOffset+1]);
          __syncthreads();


           for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
                 buckets[j] = myArray[i];
           
        }
     __syncthreads(); 
}


}

template <typename mType, int maxSize>		
void gpuArraySort(dataArrays<mType> newData, int *prefixSum, int flag, int totArrays){
	
	int *d_prefixSum, *d_numOfBuckets;
	if(flag == 1){
		int *d_prefixSumDo;
		cudaMalloc((void**) &d_prefixSumDo, (totArrays+1)*sizeof(int));
		cudaMemcpy(d_prefixSumDo, prefixSum, sizeof(int)*(1+totArrays), cudaMemcpyHostToDevice);
   
        //casting device ptr to thrust dev_ptr
        thrust::device_ptr<int> prefixDo = thrust::device_pointer_cast(d_prefixSumDo);
        //performing prefixSum using thrust
        thrust::exclusive_scan(prefixDo, prefixDo + totArrays, prefixDo);
		prefixDo[totArrays] = prefixDo[totArrays-1] + prefixSum[totArrays-1];
		d_prefixSum = d_prefixSumDo;
	}
	
    mType *d_inputData, *d_splitters, *d_bucketSizes;
    //creating events
	cudaEvent_t start, stop;
    cudaEventCreate(&start);
    cudaEventCreate(&stop);
   int *h_totalBuckets = new int[1];
   size_t size_heap, size_stack;
    //setting stack size limit
   cudaDeviceSetLimit(cudaLimitStackSize,10240);
   cudaDeviceGetLimit(&size_heap, cudaLimitMallocHeapSize);
   cudaDeviceGetLimit(&size_stack, cudaLimitStackSize);
   
   
   // allocating device memory for prefixSum, num Of buckets, splitters, bucketSizes
   cudaMalloc((void**) &d_prefixSum, (totArrays+1)*sizeof(int));
   //copying prefixSums to Device
   cudaMemcpy(d_prefixSum, prefixSum, sizeof(int)*(1+totArrays), cudaMemcpyHostToDevice);

   //allocating device memory for inputData
   thrust::device_vector<mType> inData (newData.dataList.size());
   thrust::copy(newData.dataList.begin(), newData.dataList.end(), inData.begin());
   cudaDeviceSynchronize();

   clock_t start2, end2;
   double cpu_time_used;

   cudaEventRecord(start);
   start2 = clock();
   // allocating device memory for prefixSum, num Of buckets, splitters, bucketSizes
   cudaMalloc((void**) &d_numOfBuckets, (totArrays)*sizeof(int));
   
   //clculating buckets on GPU
   getNumOfBuckets<<<totArrays,1>>>(d_prefixSum, d_numOfBuckets, totArrays);
   
   //casting device ptr to thrust dev_ptr
   thrust::device_ptr<int> prefixNumBuckets = thrust::device_pointer_cast(d_numOfBuckets);
   //performing prefixSum using thrust
   thrust::inclusive_scan(prefixNumBuckets, prefixNumBuckets + totArrays, prefixNumBuckets);
   //copying total number of buckets back
   checkCuda(cudaMemcpy(h_totalBuckets, d_numOfBuckets+(totArrays-1), sizeof(int), cudaMemcpyDeviceToHost));
   //allocating device memory for splitters
   cudaMalloc((void**) &d_splitters, (totArrays+h_totalBuckets[0])*sizeof(mType));
   
   cudaMalloc((void**) &d_bucketSizes, (1+h_totalBuckets[0])*sizeof(int));
   
   
    d_inputData = thrust::raw_pointer_cast(&inData[0]);
   
    cout<< "**** Generating Splitters ****" << endl;
     
    splitterKer<mType, maxSize><<<totArrays, 1>>>(d_inputData, d_splitters, d_prefixSum, d_numOfBuckets, totArrays);
    
	cout<< "**** Splitters Generated****" << endl;
	
	cout<< "**** Generating Buckets ****" << endl;
	
    bucketKernel<mType, maxSize><<<totArrays, maxBuckets>>>(d_inputData, d_splitters, d_prefixSum, d_numOfBuckets, d_bucketSizes, totArrays);
   
    cout<< "**** Buckets Generated ****" << endl;
	
	cout<< "**** Sorting Buckets ****" << endl;
    sortBuckets<mType, maxSize><<<totArrays, maxBuckets>>>(d_inputData, d_bucketSizes,d_numOfBuckets, d_prefixSum, totArrays);
     
	cout<< "**** Writing Back ****" << endl; 
	
    cudaEventRecord(stop);
	
	cudaEventSynchronize(stop);
    float milliseconds = 0;
    cudaEventElapsedTime(&milliseconds, start, stop);
    cudaDeviceSynchronize();
    end2 = clock();
    cpu_time_used = ((double) (end2 - start2)) * 1000 / CLOCKS_PER_SEC;
    mType *h_bucketedData = new mType[newData.prefixArray[totArrays]];
    checkCuda(cudaMemcpy(h_bucketedData, d_inputData, (newData.prefixArray[totArrays])*sizeof(mType), cudaMemcpyDeviceToHost));
   
   // cout<<"printing bucketed array:";
  //  for(int i = newData.prefixArray[totArrays-2]; i < newData.prefixArray[totArrays-1]; i++)
	//   cout<< i<<":"<<h_bucketedData[i]<<endl;
   cout<< "**** Arrays Sorted, Time Taken : "<< milliseconds<<"****" << endl;
   cout<< "**** Arrays Sorted, Time Taken (on CPU) : "<< cpu_time_used<<"****" << endl;
    
	
}

dataArrays<int> readFile(int size , int totArrays){
    string fn = "../Futhark/list_" + to_string(size) + "_" + to_string(totArrays) + ".in";
    ifstream file(fn);

    if(!file.good()){
      cout<< "Error reading file " << fn << "\n";
      throw "Can't read file";
    }

    dataArrays<int> data;
    int cur;

    for(int a = 0; a < totArrays*size && file.good(); a++){
        int c = file.peek();
        if(isdigit(c) ){
           file >> cur;
           data.dataList.push_back(cur);
        }
        else {
            file.get();
            a--;
        }
    }

    if(!file.good()){
      cout<< "Error reading file " << fn << "\n";
      throw "Can't read file";
    }

    data.prefixArray = new int[totArrays+1]; //exclusive prefix scan
    int prefix = 0;
    for(int a =0; a <= totArrays; a++)
    {
        data.prefixArray[a] = prefix;
        prefix += size;
    }


    file.close();
    return data;
}
		
int main(int argc, char *argv[]){
   if(argc != 3){
       printf("Need 2 arguments\n");
       return 0;
   }
   int totArrays = stoi(argv[1]);
   int size = stoi(argv[2]);
   printf("%i arrays of length %i\n", totArrays, size);
   int maxSize = size;
   int minSize = size;

   //generate data
   //dataArrays<int> newData = (dataGen<int>(totArrays,maxSize,minSize));
   
   //read data
   dataArrays<int> newData;
   try {
     newData = readFile(size, totArrays);
   } catch (const char* msg) {
     cerr << msg << endl;
     return 0;
   }

   int *prefixSum = newData.prefixArray;
   //calling GPU-ArraySort
   if(maxSize == 100){
       gpuArraySort<int, 100>(newData, prefixSum, 0, totArrays);
   } else if(maxSize == 1000)
   {
       gpuArraySort<int, 1000>(newData, prefixSum, 0, totArrays);
   } else if(maxSize == 10000)
   {
       gpuArraySort<int, 10000>(newData, prefixSum, 0, totArrays);
   } else
   {
       printf("Incorrect arraysizes, we only support 100, 1000 and 10000\n");
   }


	
}

	.file	"tmpxft_002680f7_00000000-6_GPU-ArraySort-2-0.cudafe1.cpp"
	.text
#APP
	.globl _ZSt21ios_base_library_initv

#NO_APP
	.type	nvtxDomainRangePop, @function
nvtxDomainRangePop:
.LFB7888:
	.cfi_startproc
	movq	424+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L2
	jmp	*%rax
.L2:
	movl	$-2, %eax
	ret
	.cfi_endproc
.LFE7888:
	.size	nvtxDomainRangePop, .-nvtxDomainRangePop
	.section	.text.nvtxEtiGetModuleFunctionTable_v3,"axG",@progbits,nvtxEtiGetModuleFunctionTable_v3,comdat
	.weak	nvtxEtiGetModuleFunctionTable_v3
	.hidden	nvtxEtiGetModuleFunctionTable_v3
	.type	nvtxEtiGetModuleFunctionTable_v3, @function
nvtxEtiGetModuleFunctionTable_v3:
.LFB7899:
	.cfi_startproc
	endbr64
	decl	%edi
	xorl	%eax, %eax
	cmpl	$5, %edi
	ja	.L4
	leaq	.L7(%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
.L7:
	.long	.L12-.L7
	.long	.L17-.L7
	.long	.L10-.L7
	.long	.L9-.L7
	.long	.L8-.L7
	.long	.L6-.L7
	.section	.text.nvtxEtiGetModuleFunctionTable_v3,"axG",@progbits,nvtxEtiGetModuleFunctionTable_v3,comdat
.L12:
	leaq	560+nvtxGlobals_v3(%rip), %rcx
	jmp	.L21
.L10:
	leaq	776+nvtxGlobals_v3(%rip), %rcx
	movl	$128, %eax
	jmp	.L11
.L9:
	leaq	904+nvtxGlobals_v3(%rip), %rcx
	jmp	.L22
.L8:
	leaq	968+nvtxGlobals_v3(%rip), %rcx
.L21:
	movl	$136, %eax
	jmp	.L11
.L6:
	leaq	1104+nvtxGlobals_v3(%rip), %rcx
.L22:
	movl	$64, %eax
	jmp	.L11
.L17:
	leaq	696+nvtxGlobals_v3(%rip), %rcx
	movl	$80, %eax
.L11:
	testq	%rdx, %rdx
	je	.L13
	shrl	$3, %eax
	decl	%eax
	movl	%eax, (%rdx)
.L13:
	testq	%rsi, %rsi
	jne	.L14
.L15:
	movl	$1, %eax
	ret
.L14:
	movq	%rcx, (%rsi)
	jmp	.L15
.L4:
	ret
	.cfi_endproc
.LFE7899:
	.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:
.LFB7900:
	.cfi_startproc
	endbr64
	leaq	8+nvtxGlobals_v3(%rip), %rax
	cmpl	$1, %edi
	je	.L23
	cmpl	$3, %edi
	leaq	16(%rax), %rax
	movl	$0, %edx
	cmovne	%rdx, %rax
.L23:
	ret
	.cfi_endproc
.LFE7900:
	.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:
.LFB7901:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE7901:
	.size	nvtxEtiSetInjectionNvtxVersion_v3, .-nvtxEtiSetInjectionNvtxVersion_v3
	.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:
.LFB10583:
	.cfi_startproc
	endbr64
	movq	%rdi, %rdx
	movl	%esi, %eax
	ret
	.cfi_endproc
.LFE10583:
	.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:
.LFB10585:
	.cfi_startproc
	endbr64
	xorl	%eax, %eax
	cmpq	%rdi, 8(%rsi)
	jne	.L30
	cmpl	%edx, (%rsi)
	sete	%al
.L30:
	ret
	.cfi_endproc
.LFE10585:
	.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:
.LFB10595:
	.cfi_startproc
	endbr64
	leaq	.LC1(%rip), %rax
	ret
	.cfi_endproc
.LFE10595:
	.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:
.LFB10600:
	.cfi_startproc
	endbr64
	leaq	.LC2(%rip), %rax
	ret
	.cfi_endproc
.LFE10600:
	.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:
.LFB10605:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE10605:
	.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:
.LFB10610:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE10610:
	.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:
.LFB10584:
	.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	.L38
	cmpl	%eax, (%rbx)
	sete	%dl
.L38:
	movl	%edx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE10584:
	.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:
.LFB10660:
	.cfi_startproc
	endbr64
	leaq	.LC3(%rip), %rax
	ret
	.cfi_endproc
.LFE10660:
	.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:
.LFB10665:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE10665:
	.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
	.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:
.LFB11002:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE11002:
	.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:
.LFB13530:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE13530:
	.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:
.LFB13620:
	.cfi_startproc
	endbr64
	ret
	.cfi_endproc
.LFE13620:
	.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_:
.LFB14059:
	.cfi_startproc
	endbr64
	cmpq	%rdi, %rsi
	sete	%al
	ret
	.cfi_endproc
.LFE14059:
	.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_:
.LFB14060:
	.cfi_startproc
	endbr64
	cmpq	%rdi, %rsi
	sete	%al
	ret
	.cfi_endproc
.LFE14060:
	.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:
.LFB10607:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE10607:
	.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:
.LFB10612:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE10612:
	.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:
.LFB10667:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE10667:
	.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:
.LFB13532:
	.cfi_startproc
	endbr64
	movl	$16, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE13532:
	.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:
.LFB13622:
	.cfi_startproc
	endbr64
	movl	$8, %esi
	jmp	_ZdlPvm@PLT
	.cfi_endproc
.LFE13622:
	.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._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:
.LFB10999:
	.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
.LFE10999:
	.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:
.LFB11001:
	.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
.LFE11001:
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD0Ev
	.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:
.LFB9412:
	.cfi_startproc
	endbr64
	leaq	16+_ZTVN4cuda3__410cuda_errorE(%rip), %rax
	movq	%rax, (%rdi)
	jmp	_ZNSt13runtime_errorD2Ev@PLT
	.cfi_endproc
.LFE9412:
	.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:
.LFB9414:
	.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
.LFE9414:
	.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:
.LFB10669:
	.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
.LFE10669:
	.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:
.LFB10671:
	.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
.LFE10671:
	.size	_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev, .-_ZN6thrust20THRUST_200700_890_NS6system12system_errorD0Ev
	.text
	.type	_ZL26__cudaUnregisterBinaryUtilv, @function
_ZL26__cudaUnregisterBinaryUtilv:
.LFB12262:
	.cfi_startproc
	endbr64
	movq	_ZL20__cudaFatCubinHandle(%rip), %rdi
	jmp	__cudaUnregisterFatBinary@PLT
	.cfi_endproc
.LFE12262:
	.size	_ZL26__cudaUnregisterBinaryUtilv, .-_ZL26__cudaUnregisterBinaryUtilv
	.section	.text._ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.align 2
	.type	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0, @function
_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0:
.LFB14080:
	.cfi_startproc
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rdi, %rax
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%r9, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	movq	%r8, %r13
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rcx, %r12
	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	%rsi, %rbx
	subq	$56, %rsp
	.cfi_def_cfa_offset 112
	movl	20(%rdi), %ecx
	movl	8(%rax), %esi
	movq	120(%rsp), %r10
	movq	32(%rax), %r9
	movq	24(%rax), %r8
	movq	112(%rsp), %r15
	movq	%r10, 8(%rsp)
	movq	%fs:40, %rdx
	movq	%rdx, 40(%rsp)
	movq	12(%rdi), %rdx
	movq	(%rdi), %rdi
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L67
	movq	8(%rsp), %r10
	movb	(%r15), %al
	movq	(%r10), %r9
	movb	%al, 24(%rsp)
	testb	%al, %al
	je	.L68
	movq	8(%r15), %rax
	movq	%rax, 32(%rsp)
	jmp	.L69
.L68:
	movl	8(%r15), %eax
	movl	%eax, 32(%rsp)
.L69:
	movl	(%r14), %ecx
	movq	0(%r13), %rdx
	leaq	24(%rsp), %r8
	movq	(%r12), %rsi
	movq	0(%rbp), %rdi
	call	*%rbx
.L67:
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	je	.L70
	call	__stack_chk_fail@PLT
.L70:
	addq	$56, %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
	jmp	cudaPeekAtLastError@PLT
	.cfi_endproc
.LFE14080:
	.size	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0, .-_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	.section	.text._ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.align 2
	.type	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0, @function
_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0:
.LFB14081:
	.cfi_startproc
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rdi, %rax
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%r9, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	movq	%r8, %r13
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rcx, %r12
	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	%rsi, %rbx
	subq	$56, %rsp
	.cfi_def_cfa_offset 112
	movl	20(%rdi), %ecx
	movl	8(%rax), %esi
	movq	120(%rsp), %r10
	movq	32(%rax), %r9
	movq	24(%rax), %r8
	movq	112(%rsp), %r15
	movq	%r10, 8(%rsp)
	movq	%fs:40, %rdx
	movq	%rdx, 40(%rsp)
	movq	12(%rdi), %rdx
	movq	(%rdi), %rdi
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L74
	movq	8(%rsp), %r10
	movb	(%r15), %al
	movl	(%r10), %r9d
	movb	%al, 24(%rsp)
	testb	%al, %al
	je	.L75
	movq	8(%r15), %rax
	movq	%rax, 32(%rsp)
	jmp	.L76
.L75:
	movl	8(%r15), %eax
	movl	%eax, 32(%rsp)
.L76:
	movl	(%r14), %ecx
	movq	0(%r13), %rdx
	leaq	24(%rsp), %r8
	movq	(%r12), %rsi
	movq	0(%rbp), %rdi
	call	*%rbx
.L74:
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	je	.L77
	call	__stack_chk_fail@PLT
.L77:
	addq	$56, %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
	jmp	cudaPeekAtLastError@PLT
	.cfi_endproc
.LFE14081:
	.size	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0, .-_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	.section	.text._ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.align 2
	.type	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0, @function
_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0:
.LFB14082:
	.cfi_startproc
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rdi, %rax
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%r9, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	movq	%r8, %r13
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rcx, %r12
	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	%rsi, %rbx
	pushq	%r10
	.cfi_def_cfa_offset 64
	movq	12(%rdi), %rdx
	movl	20(%rdi), %ecx
	movl	8(%rax), %esi
	movq	(%rdi), %rdi
	movq	32(%rax), %r9
	movq	24(%rax), %r8
	movq	64(%rsp), %r15
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L81
	movq	(%r15), %r8
	movl	(%r14), %ecx
	movq	0(%r13), %rdx
	movq	(%r12), %rsi
	movq	0(%rbp), %rdi
	call	*%rbx
.L81:
	popq	%rax
	.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
	jmp	cudaPeekAtLastError@PLT
	.cfi_endproc
.LFE14082:
	.size	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0, .-_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	.section	.text._ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.align 2
	.type	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0, @function
_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0:
.LFB14083:
	.cfi_startproc
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rdi, %rax
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%r9, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	movq	%r8, %r13
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rcx, %r12
	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	%rsi, %rbx
	pushq	%r10
	.cfi_def_cfa_offset 64
	movq	12(%rdi), %rdx
	movl	20(%rdi), %ecx
	movl	8(%rax), %esi
	movq	(%rdi), %rdi
	movq	32(%rax), %r9
	movq	24(%rax), %r8
	movq	64(%rsp), %r15
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L84
	movl	(%r15), %r8d
	movl	(%r14), %ecx
	movq	0(%r13), %rdx
	movq	(%r12), %rsi
	movq	0(%rbp), %rdi
	call	*%rbx
.L84:
	popq	%rax
	.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
	jmp	cudaPeekAtLastError@PLT
	.cfi_endproc
.LFE14083:
	.size	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0, .-_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	.text
	.align 2
	.type	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0, @function
_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0:
.LFB14084:
	.cfi_startproc
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	movq	%rcx, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	movq	%rdx, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	movq	(%rdi), %rax
	movq	%rsi, %rbx
	movq	12(%rdi), %rdx
	movl	20(%rdi), %ecx
	movl	8(%rdi), %esi
	movq	32(%rdi), %r9
	movq	24(%rdi), %r8
	movq	%rax, %rdi
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L87
	movl	(%r12), %esi
	movq	0(%rbp), %rdi
	call	*%rbx
.L87:
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	jmp	cudaPeekAtLastError@PLT
	.cfi_endproc
.LFE14084:
	.size	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0, .-_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	.type	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0, @function
_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0:
.LFB14085:
	.cfi_startproc
	jmp	cudaLaunchKernel@PLT
	.cfi_endproc
.LFE14085:
	.size	_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0, .-_Z16cudaLaunchKernelIcE9cudaErrorPT_4dim3S3_PPvmP11CUstream_st.isra.0
	.type	_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i, @function
_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i:
.LFB12302:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L90
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i(%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
.L90:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L92
	call	__stack_chk_fail@PLT
.L92:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12302:
	.size	_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i, .-_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i
	.type	_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, @function
_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i:
.LFB12300:
	.cfi_startproc
	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
	movq	%r8, 8(%rsp)
	movl	%r9d, 4(%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	8(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	4(%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	.L94
	pushq	56(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i(%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
.L94:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L96
	call	__stack_chk_fail@PLT
.L96:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12300:
	.size	_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, .-_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.type	_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i, @function
_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i:
.LFB12298:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L98
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i(%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
.L98:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L100
	call	__stack_chk_fail@PLT
.L100:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12298:
	.size	_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i, .-_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i
	.type	_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i, @function
_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i:
.LFB12296:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L102
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i(%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
.L102:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L104
	call	__stack_chk_fail@PLT
.L104:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12296:
	.size	_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i, .-_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i
	.type	_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, @function
_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i:
.LFB12294:
	.cfi_startproc
	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
	movq	%r8, 8(%rsp)
	movl	%r9d, 4(%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	8(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	4(%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	.L106
	pushq	56(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i(%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
.L106:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L108
	call	__stack_chk_fail@PLT
.L108:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12294:
	.size	_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, .-_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.type	_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i, @function
_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i:
.LFB12292:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L110
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i(%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
.L110:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L112
	call	__stack_chk_fail@PLT
.L112:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12292:
	.size	_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i, .-_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i
	.type	_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i, @function
_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i:
.LFB12290:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L114
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i(%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
.L114:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L116
	call	__stack_chk_fail@PLT
.L116:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12290:
	.size	_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i, .-_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i
	.type	_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, @function
_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i:
.LFB12288:
	.cfi_startproc
	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
	movq	%r8, 8(%rsp)
	movl	%r9d, 4(%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	8(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	4(%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	.L118
	pushq	56(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i(%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
.L118:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L120
	call	__stack_chk_fail@PLT
.L120:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12288:
	.size	_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i, .-_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.type	_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i, @function
_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i:
.LFB12286:
	.cfi_startproc
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 40(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 32(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 24(%rsp)
	leaq	56(%rsp), %rdx
	movq	%rcx, 16(%rsp)
	leaq	64(%rsp), %rcx
	movl	%r8d, 12(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	40(%rsp), %rax
	movl	$1, 80(%rsp)
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	24(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	12(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 72(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L122
	pushq	64(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i(%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
.L122:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L124
	call	__stack_chk_fail@PLT
.L124:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12286:
	.size	_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i, .-_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i
	.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:
.LFB12721:
	.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	.L126
	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
.L126:
	movq	56(%rsp), %rax
	subq	%fs:40, %rax
	je	.L128
	call	__stack_chk_fail@PLT
.L128:
	addq	$72, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12721:
	.size	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv, .-_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv
	.text
	.align 2
	.type	_ZNSolsEPFRSoS_E.isra.0, @function
_ZNSolsEPFRSoS_E.isra.0:
.LFB14086:
	.cfi_startproc
	jmp	*%rsi
	.cfi_endproc
.LFE14086:
	.size	_ZNSolsEPFRSoS_E.isra.0, .-_ZNSolsEPFRSoS_E.isra.0
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv.str1.1,"aMS",@progbits,1
.LC4:
	.string	": "
	.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:
.LFB10692:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA10692
	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	.L133
	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	.L133
	cmpq	$0, 40(%rbx)
	jne	.L135
.L137:
	movq	24(%rbx), %rsi
	leaq	8(%rsp), %r12
	movl	16(%rbx), %edx
	movq	%r12, %rdi
	movq	(%rsi), %rax
	call	*48(%rax)
	jmp	.L146
.L135:
	leaq	.LC4(%rip), %rsi
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE0:
	jmp	.L137
.L146:
	movq	%r12, %rsi
	movq	%r13, %rdi
.LEHB1:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendERKS4_@PLT
.LEHE1:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
.L133:
	movq	32(%rbx), %rbx
	jmp	.L131
.L143:
	endbr64
	movq	%rax, %rbp
.L138:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbp, %rdi
	jmp	.L139
.L142:
	endbr64
	movq	%rax, %rdi
.L139:
	call	__cxa_begin_catch@PLT
	movq	%rbx, %rdi
	call	_ZNKSt13runtime_error4whatEv@PLT
	movq	%rax, %rbx
	call	__cxa_end_catch@PLT
.L131:
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	je	.L141
	call	__stack_chk_fail@PLT
.L141:
	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
.LFE10692:
	.globl	__gxx_personality_v0
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system12system_error4whatEv,comdat
	.align 4
.LLSDA10692:
	.byte	0xff
	.byte	0x9b
	.uleb128 .LLSDATT10692-.LLSDATTD10692
.LLSDATTD10692:
	.byte	0x1
	.uleb128 .LLSDACSE10692-.LLSDACSB10692
.LLSDACSB10692:
	.uleb128 .LEHB0-.LFB10692
	.uleb128 .LEHE0-.LEHB0
	.uleb128 .L142-.LFB10692
	.uleb128 0x1
	.uleb128 .LEHB1-.LFB10692
	.uleb128 .LEHE1-.LEHB1
	.uleb128 .L143-.LFB10692
	.uleb128 0x3
.LLSDACSE10692:
	.byte	0x1
	.byte	0
	.byte	0
	.byte	0x7d
	.align 4
	.long	0

.LLSDATT10692:
	.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	.text._ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.hidden	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.type	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_, @function
_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_:
.LFB12862:
	.cfi_startproc
	endbr64
	subq	$168, %rsp
	.cfi_def_cfa_offset 176
	movq	%rdi, 24(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	56(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 152(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	%ecx, 44(%rsp)
	leaq	64(%rsp), %rcx
	movq	%rax, 96(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	44(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	7(%rsp), %rax
	movq	%rax, 128(%rsp)
	leaq	6(%rsp), %rax
	movq	%rax, 136(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 144(%rsp)
	movabsq	$4294967297, %rax
	movq	%r8, 48(%rsp)
	movq	%rax, 72(%rsp)
	movl	$1, 80(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L147
	pushq	64(%rsp)
	.cfi_def_cfa_offset 184
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rdi
	pushq	64(%rsp)
	.cfi_def_cfa_offset 192
	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 184
	popq	%rdx
	.cfi_def_cfa_offset 176
.L147:
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	je	.L149
	call	__stack_chk_fail@PLT
.L149:
	addq	$168, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12862:
	.size	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_, .-_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.section	.text._ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.hidden	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.type	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_, @function
_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_:
.LFB12861:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 24(%rsp)
	leaq	56(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	68(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	40(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	%ecx, 32(%rsp)
	leaq	48(%rsp), %rcx
	movq	%rax, 80(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	7(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	6(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	36(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movl	%r8d, 36(%rsp)
	movq	%rax, 56(%rsp)
	movl	$1, 64(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L151
	pushq	48(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rdi
	pushq	48(%rsp)
	.cfi_def_cfa_offset 176
	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 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L151:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L153
	call	__stack_chk_fail@PLT
.L153:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12861:
	.size	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_, .-_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.section	.text._ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.hidden	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.type	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_, @function
_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_:
.LFB12859:
	.cfi_startproc
	endbr64
	subq	$168, %rsp
	.cfi_def_cfa_offset 176
	movq	%rdi, 24(%rsp)
	leaq	72(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	84(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	56(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 152(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	%ecx, 44(%rsp)
	leaq	64(%rsp), %rcx
	movq	%rax, 96(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	44(%rsp), %rax
	movq	%rax, 120(%rsp)
	leaq	7(%rsp), %rax
	movq	%rax, 128(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 144(%rsp)
	movabsq	$4294967297, %rax
	movq	%r9, 48(%rsp)
	movq	%r8, 136(%rsp)
	movq	%rax, 72(%rsp)
	movl	$1, 80(%rsp)
	movq	%rax, 84(%rsp)
	movl	$1, 92(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L155
	pushq	64(%rsp)
	.cfi_def_cfa_offset 184
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rdi
	pushq	64(%rsp)
	.cfi_def_cfa_offset 192
	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 184
	popq	%rdx
	.cfi_def_cfa_offset 176
.L155:
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	je	.L157
	call	__stack_chk_fail@PLT
.L157:
	addq	$168, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12859:
	.size	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_, .-_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.section	.text._ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.hidden	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.type	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_, @function
_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_:
.LFB12858:
	.cfi_startproc
	endbr64
	subq	$152, %rsp
	.cfi_def_cfa_offset 160
	movq	%rdi, 24(%rsp)
	leaq	56(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	68(%rsp), %rsi
	movq	%rdx, 8(%rsp)
	leaq	40(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 136(%rsp)
	xorl	%eax, %eax
	leaq	24(%rsp), %rax
	movl	%ecx, 32(%rsp)
	leaq	48(%rsp), %rcx
	movq	%rax, 80(%rsp)
	leaq	16(%rsp), %rax
	movq	%rax, 88(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 96(%rsp)
	leaq	32(%rsp), %rax
	movq	%rax, 104(%rsp)
	leaq	7(%rsp), %rax
	movq	%rax, 112(%rsp)
	leaq	36(%rsp), %rax
	movq	%rax, 128(%rsp)
	movabsq	$4294967297, %rax
	movl	%r9d, 36(%rsp)
	movq	%r8, 120(%rsp)
	movq	%rax, 56(%rsp)
	movl	$1, 64(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L159
	pushq	48(%rsp)
	.cfi_def_cfa_offset 168
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rdi
	pushq	48(%rsp)
	.cfi_def_cfa_offset 176
	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 168
	popq	%rdx
	.cfi_def_cfa_offset 160
.L159:
	movq	136(%rsp), %rax
	subq	%fs:40, %rax
	je	.L161
	call	__stack_chk_fail@PLT
.L161:
	addq	$152, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12858:
	.size	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_, .-_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_
	.section	.text._ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i,"axG",@progbits,_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i,comdat
	.weak	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i
	.hidden	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i
	.type	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i, @function
_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i:
.LFB12854:
	.cfi_startproc
	endbr64
	subq	$104, %rsp
	.cfi_def_cfa_offset 112
	movq	%rdi, 8(%rsp)
	leaq	40(%rsp), %rcx
	leaq	32(%rsp), %rdx
	leaq	48(%rsp), %rdi
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	leaq	8(%rsp), %rax
	movl	%esi, 28(%rsp)
	leaq	60(%rsp), %rsi
	movq	%rax, 72(%rsp)
	leaq	28(%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	.L163
	pushq	40(%rsp)
	.cfi_def_cfa_offset 120
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%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
.L163:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L165
	call	__stack_chk_fail@PLT
.L165:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12854:
	.size	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i, .-_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i
	.section	.text._ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_,"axG",@progbits,_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_,comdat
	.weak	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_
	.hidden	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_
	.type	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_, @function
_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_:
.LFB12852:
	.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	.L167
	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_ptrIiEEiEEEEvT0_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
.L167:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L169
	call	__stack_chk_fail@PLT
.L169:
	addq	$104, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12852:
	.size	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_, .-_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_
	.section	.text._Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.type	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, @function
_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i:
.LFB12849:
	.cfi_startproc
	endbr64
	jmp	_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.cfi_endproc
.LFE12849:
	.size	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, .-_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.section	.text._Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.type	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, @function
_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i:
.LFB12846:
	.cfi_startproc
	endbr64
	jmp	_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.cfi_endproc
.LFE12846:
	.size	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, .-_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.section	.text._Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.type	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i, @function
_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i:
.LFB12843:
	.cfi_startproc
	endbr64
	jmp	_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
	.cfi_endproc
.LFE12843:
	.size	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i, .-_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.section	.text._Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,comdat
	.weak	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.type	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i, @function
_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i:
.LFB12847:
	.cfi_startproc
	endbr64
	jmp	_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i
	.cfi_endproc
.LFE12847:
	.size	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i, .-_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.section	.text._Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,comdat
	.weak	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
	.type	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i, @function
_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i:
.LFB12848:
	.cfi_startproc
	endbr64
	jmp	_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i
	.cfi_endproc
.LFE12848:
	.size	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i, .-_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
	.section	.text._Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,comdat
	.weak	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
	.type	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i, @function
_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i:
.LFB12845:
	.cfi_startproc
	endbr64
	jmp	_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i
	.cfi_endproc
.LFE12845:
	.size	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i, .-_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
	.section	.text._Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,comdat
	.weak	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
	.type	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i, @function
_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i:
.LFB12844:
	.cfi_startproc
	endbr64
	jmp	_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i
	.cfi_endproc
.LFE12844:
	.size	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i, .-_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
	.section	.text._Z11splitterKerIiLi100EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi100EEvPT_S1_PiS2_i,comdat
	.weak	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i
	.type	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i, @function
_Z11splitterKerIiLi100EEvPT_S1_PiS2_i:
.LFB12842:
	.cfi_startproc
	endbr64
	jmp	_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i
	.cfi_endproc
.LFE12842:
	.size	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i, .-_Z11splitterKerIiLi100EEvPT_S1_PiS2_i
	.section	.text._Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,comdat
	.weak	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.type	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i, @function
_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i:
.LFB12850:
	.cfi_startproc
	endbr64
	jmp	_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i
	.cfi_endproc
.LFE12850:
	.size	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i, .-_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.section	.rodata._ZNSt7__cxx119to_stringEi.str1.1,"aMS",@progbits,1
.LC5:
	.string	"00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899"
	.section	.text._ZNSt7__cxx119to_stringEi,"axG",@progbits,_ZNSt7__cxx119to_stringEi,comdat
	.weak	_ZNSt7__cxx119to_stringEi
	.type	_ZNSt7__cxx119to_stringEi, @function
_ZNSt7__cxx119to_stringEi:
.LFB2826:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA2826
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	movl	%esi, %r13d
	movl	$10000, %ecx
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	shrl	$31, %r13d
	movq	%rdi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	movl	$1, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	movl	%esi, %ebx
	subq	$232, %rsp
	.cfi_def_cfa_offset 272
	movq	%fs:40, %rax
	movq	%rax, 216(%rsp)
	xorl	%eax, %eax
	negl	%ebx
	cmovs	%esi, %ebx
	movl	%ebx, %eax
.L186:
	cmpl	$9, %eax
	jbe	.L182
	cmpl	$99, %eax
	ja	.L183
	incl	%ebp
	jmp	.L182
.L183:
	cmpl	$999, %eax
	ja	.L184
	addl	$2, %ebp
	jmp	.L182
.L184:
	cmpl	$9999, %eax
	ja	.L185
	addl	$3, %ebp
	jmp	.L182
.L185:
	movl	%eax, %eax
	xorl	%edx, %edx
	addl	$4, %ebp
	divq	%rcx
	jmp	.L186
.L182:
	leaq	16(%r12), %rax
	leal	0(%r13,%rbp), %esi
	movq	%r12, %rdi
	decl	%ebp
	movq	%rax, (%r12)
	movl	$45, %edx
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructEmc@PLT
	movzbl	%r13b, %r8d
	leaq	15(%rsp), %rdi
	leaq	.LC5(%rip), %rsi
	movl	$201, %ecx
	addq	(%r12), %r8
	rep movsb
	movl	$100, %ecx
.L187:
	cmpl	$99, %ebx
	jbe	.L193
	movl	%ebx, %eax
	xorl	%edx, %edx
	movl	%ebp, %esi
	divl	%ecx
	addl	%edx, %edx
	movl	%eax, %ebx
	leal	1(%rdx), %eax
	movb	15(%rsp,%rdx), %dl
	movb	15(%rsp,%rax), %al
	movb	%al, (%r8,%rsi)
	leal	-1(%rbp), %eax
	subl	$2, %ebp
	movb	%dl, (%r8,%rax)
	jmp	.L187
.L193:
	leal	48(%rbx), %eax
	cmpl	$9, %ebx
	jbe	.L190
	addl	%ebx, %ebx
	leal	1(%rbx), %eax
	movb	15(%rsp,%rax), %al
	movb	%al, 1(%r8)
	movb	15(%rsp,%rbx), %al
.L190:
	movb	%al, (%r8)
	movq	216(%rsp), %rax
	subq	%fs:40, %rax
	je	.L191
	call	__stack_chk_fail@PLT
.L191:
	addq	$232, %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
.LFE2826:
	.section	.gcc_except_table._ZNSt7__cxx119to_stringEi,"aG",@progbits,_ZNSt7__cxx119to_stringEi,comdat
.LLSDA2826:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE2826-.LLSDACSB2826
.LLSDACSB2826:
.LLSDACSE2826:
	.section	.text._ZNSt7__cxx119to_stringEi,"axG",@progbits,_ZNSt7__cxx119to_stringEi,comdat
	.size	_ZNSt7__cxx119to_stringEi, .-_ZNSt7__cxx119to_stringEi
	.section	.text.nvtxSetInitFunctionsToNoops_v3,"axG",@progbits,nvtxSetInitFunctionsToNoops_v3,comdat
	.weak	nvtxSetInitFunctionsToNoops_v3
	.hidden	nvtxSetInitFunctionsToNoops_v3
	.type	nvtxSetInitFunctionsToNoops_v3, @function
nvtxSetInitFunctionsToNoops_v3:
.LFB7966:
	.cfi_startproc
	endbr64
	testl	%edi, %edi
	leaq	nvtxMarkEx_impl_init_v3(%rip), %rdx
	setne	%al
	cmpq	%rdx, 48+nvtxGlobals_v3(%rip)
	je	.L323
	testb	%al, %al
	je	.L195
.L323:
	xorl	%r10d, %r10d
	movq	%r10, 48+nvtxGlobals_v3(%rip)
.L195:
	leaq	nvtxMarkA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 56+nvtxGlobals_v3(%rip)
	je	.L324
	testb	%al, %al
	je	.L197
.L324:
	xorl	%r9d, %r9d
	movq	%r9, 56+nvtxGlobals_v3(%rip)
.L197:
	leaq	nvtxMarkW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 64+nvtxGlobals_v3(%rip)
	je	.L325
	testb	%al, %al
	je	.L199
.L325:
	xorl	%r8d, %r8d
	movq	%r8, 64+nvtxGlobals_v3(%rip)
.L199:
	leaq	nvtxRangeStartEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 72+nvtxGlobals_v3(%rip)
	je	.L326
	testb	%al, %al
	je	.L201
.L326:
	xorl	%edi, %edi
	movq	%rdi, 72+nvtxGlobals_v3(%rip)
.L201:
	leaq	nvtxRangeStartA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 80+nvtxGlobals_v3(%rip)
	je	.L327
	testb	%al, %al
	je	.L203
.L327:
	xorl	%esi, %esi
	movq	%rsi, 80+nvtxGlobals_v3(%rip)
.L203:
	leaq	nvtxRangeStartW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 88+nvtxGlobals_v3(%rip)
	je	.L328
	testb	%al, %al
	je	.L205
.L328:
	xorl	%ecx, %ecx
	movq	%rcx, 88+nvtxGlobals_v3(%rip)
.L205:
	leaq	nvtxRangeEnd_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 96+nvtxGlobals_v3(%rip)
	je	.L329
	testb	%al, %al
	je	.L207
.L329:
	xorl	%edx, %edx
	movq	%rdx, 96+nvtxGlobals_v3(%rip)
.L207:
	leaq	nvtxRangePushEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 104+nvtxGlobals_v3(%rip)
	je	.L330
	testb	%al, %al
	je	.L209
.L330:
	xorl	%r11d, %r11d
	movq	%r11, 104+nvtxGlobals_v3(%rip)
.L209:
	leaq	nvtxRangePushA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 112+nvtxGlobals_v3(%rip)
	je	.L331
	testb	%al, %al
	je	.L211
.L331:
	xorl	%r10d, %r10d
	movq	%r10, 112+nvtxGlobals_v3(%rip)
.L211:
	leaq	nvtxRangePushW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 120+nvtxGlobals_v3(%rip)
	je	.L332
	testb	%al, %al
	je	.L213
.L332:
	xorl	%r9d, %r9d
	movq	%r9, 120+nvtxGlobals_v3(%rip)
.L213:
	leaq	nvtxRangePop_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 128+nvtxGlobals_v3(%rip)
	je	.L333
	testb	%al, %al
	je	.L215
.L333:
	xorl	%r8d, %r8d
	movq	%r8, 128+nvtxGlobals_v3(%rip)
.L215:
	leaq	nvtxNameCategoryA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 136+nvtxGlobals_v3(%rip)
	je	.L334
	testb	%al, %al
	je	.L217
.L334:
	xorl	%edi, %edi
	movq	%rdi, 136+nvtxGlobals_v3(%rip)
.L217:
	leaq	nvtxNameCategoryW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 144+nvtxGlobals_v3(%rip)
	je	.L335
	testb	%al, %al
	je	.L219
.L335:
	xorl	%esi, %esi
	movq	%rsi, 144+nvtxGlobals_v3(%rip)
.L219:
	leaq	nvtxNameOsThreadA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 152+nvtxGlobals_v3(%rip)
	je	.L336
	testb	%al, %al
	je	.L221
.L336:
	xorl	%ecx, %ecx
	movq	%rcx, 152+nvtxGlobals_v3(%rip)
.L221:
	leaq	nvtxNameOsThreadW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 160+nvtxGlobals_v3(%rip)
	je	.L337
	testb	%al, %al
	je	.L223
.L337:
	xorl	%edx, %edx
	movq	%rdx, 160+nvtxGlobals_v3(%rip)
.L223:
	leaq	nvtxNameCuDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 168+nvtxGlobals_v3(%rip)
	je	.L338
	testb	%al, %al
	je	.L225
.L338:
	xorl	%r11d, %r11d
	movq	%r11, 168+nvtxGlobals_v3(%rip)
.L225:
	leaq	nvtxNameCuDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 176+nvtxGlobals_v3(%rip)
	je	.L339
	testb	%al, %al
	je	.L227
.L339:
	xorl	%r10d, %r10d
	movq	%r10, 176+nvtxGlobals_v3(%rip)
.L227:
	leaq	nvtxNameCuContextA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 184+nvtxGlobals_v3(%rip)
	je	.L340
	testb	%al, %al
	je	.L229
.L340:
	xorl	%r9d, %r9d
	movq	%r9, 184+nvtxGlobals_v3(%rip)
.L229:
	leaq	nvtxNameCuContextW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 192+nvtxGlobals_v3(%rip)
	je	.L341
	testb	%al, %al
	je	.L231
.L341:
	xorl	%r8d, %r8d
	movq	%r8, 192+nvtxGlobals_v3(%rip)
.L231:
	leaq	nvtxNameCuStreamA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 200+nvtxGlobals_v3(%rip)
	je	.L342
	testb	%al, %al
	je	.L233
.L342:
	xorl	%edi, %edi
	movq	%rdi, 200+nvtxGlobals_v3(%rip)
.L233:
	leaq	nvtxNameCuStreamW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 208+nvtxGlobals_v3(%rip)
	je	.L343
	testb	%al, %al
	je	.L235
.L343:
	xorl	%esi, %esi
	movq	%rsi, 208+nvtxGlobals_v3(%rip)
.L235:
	leaq	nvtxNameCuEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 216+nvtxGlobals_v3(%rip)
	je	.L344
	testb	%al, %al
	je	.L237
.L344:
	xorl	%ecx, %ecx
	movq	%rcx, 216+nvtxGlobals_v3(%rip)
.L237:
	leaq	nvtxNameCuEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 224+nvtxGlobals_v3(%rip)
	je	.L345
	testb	%al, %al
	je	.L239
.L345:
	xorl	%edx, %edx
	movq	%rdx, 224+nvtxGlobals_v3(%rip)
.L239:
	leaq	nvtxNameClDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 232+nvtxGlobals_v3(%rip)
	je	.L346
	testb	%al, %al
	je	.L241
.L346:
	xorl	%r11d, %r11d
	movq	%r11, 232+nvtxGlobals_v3(%rip)
.L241:
	leaq	nvtxNameClDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 240+nvtxGlobals_v3(%rip)
	je	.L347
	testb	%al, %al
	je	.L243
.L347:
	xorl	%r10d, %r10d
	movq	%r10, 240+nvtxGlobals_v3(%rip)
.L243:
	leaq	nvtxNameClContextA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 248+nvtxGlobals_v3(%rip)
	je	.L348
	testb	%al, %al
	je	.L245
.L348:
	xorl	%r9d, %r9d
	movq	%r9, 248+nvtxGlobals_v3(%rip)
.L245:
	leaq	nvtxNameClContextW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 256+nvtxGlobals_v3(%rip)
	je	.L349
	testb	%al, %al
	je	.L247
.L349:
	xorl	%r8d, %r8d
	movq	%r8, 256+nvtxGlobals_v3(%rip)
.L247:
	leaq	nvtxNameClCommandQueueA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 264+nvtxGlobals_v3(%rip)
	je	.L350
	testb	%al, %al
	je	.L249
.L350:
	xorl	%edi, %edi
	movq	%rdi, 264+nvtxGlobals_v3(%rip)
.L249:
	leaq	nvtxNameClCommandQueueW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 272+nvtxGlobals_v3(%rip)
	je	.L351
	testb	%al, %al
	je	.L251
.L351:
	xorl	%esi, %esi
	movq	%rsi, 272+nvtxGlobals_v3(%rip)
.L251:
	leaq	nvtxNameClMemObjectA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 280+nvtxGlobals_v3(%rip)
	je	.L352
	testb	%al, %al
	je	.L253
.L352:
	xorl	%ecx, %ecx
	movq	%rcx, 280+nvtxGlobals_v3(%rip)
.L253:
	leaq	nvtxNameClMemObjectW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 288+nvtxGlobals_v3(%rip)
	je	.L353
	testb	%al, %al
	je	.L255
.L353:
	xorl	%edx, %edx
	movq	%rdx, 288+nvtxGlobals_v3(%rip)
.L255:
	leaq	nvtxNameClSamplerA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 296+nvtxGlobals_v3(%rip)
	je	.L354
	testb	%al, %al
	je	.L257
.L354:
	xorl	%r11d, %r11d
	movq	%r11, 296+nvtxGlobals_v3(%rip)
.L257:
	leaq	nvtxNameClSamplerW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 304+nvtxGlobals_v3(%rip)
	je	.L355
	testb	%al, %al
	je	.L259
.L355:
	xorl	%r10d, %r10d
	movq	%r10, 304+nvtxGlobals_v3(%rip)
.L259:
	leaq	nvtxNameClProgramA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 312+nvtxGlobals_v3(%rip)
	je	.L356
	testb	%al, %al
	je	.L261
.L356:
	xorl	%r9d, %r9d
	movq	%r9, 312+nvtxGlobals_v3(%rip)
.L261:
	leaq	nvtxNameClProgramW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 320+nvtxGlobals_v3(%rip)
	je	.L357
	testb	%al, %al
	je	.L263
.L357:
	xorl	%r8d, %r8d
	movq	%r8, 320+nvtxGlobals_v3(%rip)
.L263:
	leaq	nvtxNameClEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 328+nvtxGlobals_v3(%rip)
	je	.L358
	testb	%al, %al
	je	.L265
.L358:
	xorl	%edi, %edi
	movq	%rdi, 328+nvtxGlobals_v3(%rip)
.L265:
	leaq	nvtxNameClEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 336+nvtxGlobals_v3(%rip)
	je	.L359
	testb	%al, %al
	je	.L267
.L359:
	xorl	%esi, %esi
	movq	%rsi, 336+nvtxGlobals_v3(%rip)
.L267:
	leaq	nvtxNameCudaDeviceA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 344+nvtxGlobals_v3(%rip)
	je	.L360
	testb	%al, %al
	je	.L269
.L360:
	xorl	%ecx, %ecx
	movq	%rcx, 344+nvtxGlobals_v3(%rip)
.L269:
	leaq	nvtxNameCudaDeviceW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 352+nvtxGlobals_v3(%rip)
	je	.L361
	testb	%al, %al
	je	.L271
.L361:
	xorl	%edx, %edx
	movq	%rdx, 352+nvtxGlobals_v3(%rip)
.L271:
	leaq	nvtxNameCudaStreamA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 360+nvtxGlobals_v3(%rip)
	je	.L362
	testb	%al, %al
	je	.L273
.L362:
	xorl	%r11d, %r11d
	movq	%r11, 360+nvtxGlobals_v3(%rip)
.L273:
	leaq	nvtxNameCudaStreamW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 368+nvtxGlobals_v3(%rip)
	je	.L363
	testb	%al, %al
	je	.L275
.L363:
	xorl	%r10d, %r10d
	movq	%r10, 368+nvtxGlobals_v3(%rip)
.L275:
	leaq	nvtxNameCudaEventA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 376+nvtxGlobals_v3(%rip)
	je	.L364
	testb	%al, %al
	je	.L277
.L364:
	xorl	%r9d, %r9d
	movq	%r9, 376+nvtxGlobals_v3(%rip)
.L277:
	leaq	nvtxNameCudaEventW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 384+nvtxGlobals_v3(%rip)
	je	.L365
	testb	%al, %al
	je	.L279
.L365:
	xorl	%r8d, %r8d
	movq	%r8, 384+nvtxGlobals_v3(%rip)
.L279:
	leaq	nvtxDomainMarkEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 392+nvtxGlobals_v3(%rip)
	je	.L366
	testb	%al, %al
	je	.L281
.L366:
	xorl	%edi, %edi
	movq	%rdi, 392+nvtxGlobals_v3(%rip)
.L281:
	leaq	nvtxDomainRangeStartEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 400+nvtxGlobals_v3(%rip)
	je	.L367
	testb	%al, %al
	je	.L283
.L367:
	xorl	%esi, %esi
	movq	%rsi, 400+nvtxGlobals_v3(%rip)
.L283:
	leaq	nvtxDomainRangeEnd_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 408+nvtxGlobals_v3(%rip)
	je	.L368
	testb	%al, %al
	je	.L285
.L368:
	xorl	%ecx, %ecx
	movq	%rcx, 408+nvtxGlobals_v3(%rip)
.L285:
	leaq	nvtxDomainRangePushEx_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 416+nvtxGlobals_v3(%rip)
	je	.L369
	testb	%al, %al
	je	.L287
.L369:
	xorl	%edx, %edx
	movq	%rdx, 416+nvtxGlobals_v3(%rip)
.L287:
	leaq	nvtxDomainRangePop_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 424+nvtxGlobals_v3(%rip)
	je	.L370
	testb	%al, %al
	je	.L289
.L370:
	xorl	%r11d, %r11d
	movq	%r11, 424+nvtxGlobals_v3(%rip)
.L289:
	leaq	nvtxDomainResourceCreate_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 432+nvtxGlobals_v3(%rip)
	je	.L371
	testb	%al, %al
	je	.L291
.L371:
	xorl	%r10d, %r10d
	movq	%r10, 432+nvtxGlobals_v3(%rip)
.L291:
	leaq	nvtxDomainResourceDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 440+nvtxGlobals_v3(%rip)
	je	.L372
	testb	%al, %al
	je	.L293
.L372:
	xorl	%r9d, %r9d
	movq	%r9, 440+nvtxGlobals_v3(%rip)
.L293:
	leaq	nvtxDomainNameCategoryA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 448+nvtxGlobals_v3(%rip)
	je	.L373
	testb	%al, %al
	je	.L295
.L373:
	xorl	%r8d, %r8d
	movq	%r8, 448+nvtxGlobals_v3(%rip)
.L295:
	leaq	nvtxDomainNameCategoryW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 456+nvtxGlobals_v3(%rip)
	je	.L374
	testb	%al, %al
	je	.L297
.L374:
	xorl	%edi, %edi
	movq	%rdi, 456+nvtxGlobals_v3(%rip)
.L297:
	leaq	nvtxDomainRegisterStringA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 464+nvtxGlobals_v3(%rip)
	je	.L375
	testb	%al, %al
	je	.L299
.L375:
	xorl	%esi, %esi
	movq	%rsi, 464+nvtxGlobals_v3(%rip)
.L299:
	leaq	nvtxDomainRegisterStringW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 472+nvtxGlobals_v3(%rip)
	je	.L376
	testb	%al, %al
	je	.L301
.L376:
	xorl	%ecx, %ecx
	movq	%rcx, 472+nvtxGlobals_v3(%rip)
.L301:
	leaq	nvtxDomainCreateA_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 480+nvtxGlobals_v3(%rip)
	je	.L377
	testb	%al, %al
	je	.L303
.L377:
	xorl	%edx, %edx
	movq	%rdx, 480+nvtxGlobals_v3(%rip)
.L303:
	leaq	nvtxDomainCreateW_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 488+nvtxGlobals_v3(%rip)
	je	.L378
	testb	%al, %al
	je	.L305
.L378:
	xorl	%r11d, %r11d
	movq	%r11, 488+nvtxGlobals_v3(%rip)
.L305:
	leaq	nvtxDomainDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 496+nvtxGlobals_v3(%rip)
	je	.L379
	testb	%al, %al
	je	.L307
.L379:
	xorl	%r10d, %r10d
	movq	%r10, 496+nvtxGlobals_v3(%rip)
.L307:
	leaq	nvtxInitialize_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 504+nvtxGlobals_v3(%rip)
	je	.L380
	testb	%al, %al
	je	.L309
.L380:
	xorl	%r9d, %r9d
	movq	%r9, 504+nvtxGlobals_v3(%rip)
.L309:
	leaq	nvtxDomainSyncUserCreate_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 512+nvtxGlobals_v3(%rip)
	je	.L381
	testb	%al, %al
	je	.L311
.L381:
	xorl	%r8d, %r8d
	movq	%r8, 512+nvtxGlobals_v3(%rip)
.L311:
	leaq	nvtxDomainSyncUserDestroy_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 520+nvtxGlobals_v3(%rip)
	je	.L382
	testb	%al, %al
	je	.L313
.L382:
	xorl	%edi, %edi
	movq	%rdi, 520+nvtxGlobals_v3(%rip)
.L313:
	leaq	nvtxDomainSyncUserAcquireStart_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 528+nvtxGlobals_v3(%rip)
	je	.L383
	testb	%al, %al
	je	.L315
.L383:
	xorl	%esi, %esi
	movq	%rsi, 528+nvtxGlobals_v3(%rip)
.L315:
	leaq	nvtxDomainSyncUserAcquireFailed_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 536+nvtxGlobals_v3(%rip)
	je	.L384
	testb	%al, %al
	je	.L317
.L384:
	xorl	%ecx, %ecx
	movq	%rcx, 536+nvtxGlobals_v3(%rip)
.L317:
	leaq	nvtxDomainSyncUserAcquireSuccess_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 544+nvtxGlobals_v3(%rip)
	je	.L385
	testb	%al, %al
	je	.L319
.L385:
	xorl	%edx, %edx
	movq	%rdx, 544+nvtxGlobals_v3(%rip)
.L319:
	leaq	nvtxDomainSyncUserReleasing_impl_init_v3(%rip), %rdx
	cmpq	%rdx, 552+nvtxGlobals_v3(%rip)
	je	.L386
	testb	%al, %al
	je	.L194
.L386:
	xorl	%eax, %eax
	movq	%rax, 552+nvtxGlobals_v3(%rip)
.L194:
	ret
	.cfi_endproc
.LFE7966:
	.size	nvtxSetInitFunctionsToNoops_v3, .-nvtxSetInitFunctionsToNoops_v3
	.section	.rodata.nvtxInitializeInjectionLibrary_v3.str1.1,"aMS",@progbits,1
.LC6:
	.string	"NVTX_INJECTION64_PATH"
.LC7:
	.string	"InitializeInjectionNvtx2"
	.section	.text.nvtxInitializeInjectionLibrary_v3,"axG",@progbits,nvtxInitializeInjectionLibrary_v3,comdat
	.weak	nvtxInitializeInjectionLibrary_v3
	.hidden	nvtxInitializeInjectionLibrary_v3
	.type	nvtxInitializeInjectionLibrary_v3, @function
nvtxInitializeInjectionLibrary_v3:
.LFB7967:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	leaq	.LC6(%rip), %rdi
	call	getenv@PLT
	movq	%rax, %rbx
	testq	%rax, %rax
	je	.L580
	movl	$1, %esi
	movq	%rax, %rdi
	call	dlopen@PLT
	movl	$4, %edx
	movq	%rax, %rbx
	testq	%rax, %rax
	je	.L579
	leaq	.LC7(%rip), %rsi
	movq	%rax, %rdi
	call	dlsym@PLT
	testq	%rax, %rax
	jne	.L582
	movq	%rbx, %rdi
	call	dlclose@PLT
	movl	$5, %edx
	jmp	.L579
.L580:
	movq	InitializeInjectionNvtx2_fnptr(%rip), %rax
	movl	$7, %edx
	testq	%rax, %rax
	je	.L579
.L582:
	leaq	nvtxGetExportTable_v3(%rip), %rdi
	call	*%rax
	xorl	%edx, %edx
	testl	%eax, %eax
	jne	.L579
	testq	%rbx, %rbx
	je	.L583
	movq	%rbx, %rdi
	call	dlclose@PLT
.L583:
	movl	$6, %edx
.L579:
	movl	%edx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7967:
	.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:
.LFB7968:
	.cfi_startproc
	endbr64
	movl	nvtxGlobals_v3(%rip), %eax
	cmpl	$2, %eax
	je	.L599
	pushq	%rdx
	.cfi_def_cfa_offset 16
	movl	$1, %eax
	xorl	%edx, %edx
	mfence
	lock cmpxchgl	%edx, nvtxGlobals_v3(%rip)
	testl	%eax, %eax
	jne	.L602
	call	nvtxInitializeInjectionLibrary_v3
	xorl	%edi, %edi
	testl	%eax, %eax
	setne	%dil
	call	nvtxSetInitFunctionsToNoops_v3
	movl	$2, %eax
	mfence
	xchgl	nvtxGlobals_v3(%rip), %eax
	jmp	.L591
.L602:
	mfence
	movl	nvtxGlobals_v3(%rip), %eax
	cmpl	$2, %eax
	je	.L591
	call	sched_yield@PLT
	jmp	.L602
.L591:
	popq	%rax
	.cfi_def_cfa_offset 8
	ret
.L599:
	ret
	.cfi_endproc
.LFE7968:
	.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:
.LFB7965:
	.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	.L603
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L603:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7965:
	.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:
.LFB7964:
	.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	.L606
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L606:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7964:
	.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:
.LFB7963:
	.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	.L609
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L609:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7963:
	.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:
.LFB7962:
	.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	.L612
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L612:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7962:
	.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:
.LFB7961:
	.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	.L615
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L615:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7961:
	.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:
.LFB7960:
	.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	.L619
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L619:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7960:
	.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:
.LFB7931:
	.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	.L621
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L621:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7931:
	.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:
.LFB7930:
	.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	.L624
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L624:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7930:
	.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:
.LFB7929:
	.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	.L628
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L628:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7929:
	.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:
.LFB7928:
	.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	.L631
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L631:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7928:
	.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:
.LFB7927:
	.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	.L634
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L634:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7927:
	.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:
.LFB7926:
	.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	.L637
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L637:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7926:
	.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:
.LFB7925:
	.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	.L639
	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
.L639:
	.cfi_restore_state
	addq	$40, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7925:
	.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:
.LFB7924:
	.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	.L642
	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
.L642:
	.cfi_restore_state
	addq	$40, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7924:
	.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:
.LFB7923:
	.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	.L645
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L645:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7923:
	.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:
.LFB7922:
	.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	.L649
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L649:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7922:
	.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:
.LFB7921:
	.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
.LFE7921:
	.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:
.LFB7920:
	.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	.L654
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L654:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7920:
	.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:
.LFB7919:
	.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	.L656
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L656:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7919:
	.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:
.LFB7918:
	.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	.L660
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L660:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7918:
	.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:
.LFB7917:
	.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	.L662
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L662:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7917:
	.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:
.LFB7945:
	.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	.L665
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L665:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7945:
	.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:
.LFB7944:
	.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	.L668
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L668:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7944:
	.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:
.LFB7943:
	.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	.L671
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L671:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7943:
	.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:
.LFB7942:
	.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	.L674
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L674:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7942:
	.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:
.LFB7941:
	.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	.L677
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L677:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7941:
	.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:
.LFB7940:
	.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	.L680
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L680:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7940:
	.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:
.LFB7959:
	.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	.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
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7959:
	.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:
.LFB7958:
	.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	.L686
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L686:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7958:
	.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:
.LFB7957:
	.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	.L689
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L689:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7957:
	.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:
.LFB7956:
	.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	.L692
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L692:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7956:
	.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:
.LFB7955:
	.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	.L695
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L695:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7955:
	.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:
.LFB7954:
	.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	.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
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7954:
	.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:
.LFB7953:
	.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	.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
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7953:
	.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:
.LFB7952:
	.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	.L704
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L704:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7952:
	.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:
.LFB7951:
	.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	.L707
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L707:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7951:
	.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:
.LFB7950:
	.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	.L710
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L710:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7950:
	.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:
.LFB7949:
	.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	.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
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7949:
	.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:
.LFB7948:
	.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	.L716
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L716:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7948:
	.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:
.LFB7947:
	.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	.L719
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L719:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7947:
	.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:
.LFB7946:
	.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	.L722
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L722:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7946:
	.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:
.LFB7939:
	.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	.L725
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L725:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7939:
	.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:
.LFB7938:
	.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	.L728
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L728:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7938:
	.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:
.LFB7937:
	.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	.L731
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L731:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7937:
	.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:
.LFB7936:
	.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	.L734
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L734:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7936:
	.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:
.LFB7935:
	.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	.L737
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L737:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7935:
	.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:
.LFB7934:
	.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	.L740
	movq	(%rsp), %rsi
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L740:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7934:
	.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:
.LFB7933:
	.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	.L743
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L743:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7933:
	.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:
.LFB7932:
	.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	.L746
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L746:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7932:
	.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:
.LFB7916:
	.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	.L749
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L749:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7916:
	.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:
.LFB7915:
	.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	.L752
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L752:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7915:
	.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:
.LFB7914:
	.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	.L755
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L755:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7914:
	.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:
.LFB7913:
	.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	.L758
	movq	(%rsp), %rsi
	movl	12(%rsp), %edi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L758:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7913:
	.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:
.LFB7912:
	.cfi_startproc
	endbr64
	pushq	%rsi
	.cfi_def_cfa_offset 16
	call	nvtxInitOnce_v3
	movq	128+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L762
	popq	%rcx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L762:
	.cfi_restore_state
	movl	$-2, %eax
	popq	%rdx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7912:
	.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:
.LFB7911:
	.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	.L765
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L765:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7911:
	.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:
.LFB7910:
	.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	.L768
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L768:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7910:
	.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:
.LFB7909:
	.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	.L771
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L771:
	.cfi_restore_state
	movl	$-2, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7909:
	.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:
.LFB7908:
	.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	.L773
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L773:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7908:
	.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:
.LFB7907:
	.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	.L777
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L777:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7907:
	.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:
.LFB7906:
	.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	.L780
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L780:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7906:
	.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:
.LFB7905:
	.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	.L783
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L783:
	.cfi_restore_state
	xorl	%eax, %eax
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7905:
	.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:
.LFB7904:
	.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	.L785
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L785:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7904:
	.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:
.LFB7903:
	.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	.L788
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L788:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7903:
	.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:
.LFB7902:
	.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	.L791
	movq	8(%rsp), %rdi
	addq	$24, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	*%rax
.L791:
	.cfi_restore_state
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE7902:
	.size	nvtxMarkEx_impl_init_v3, .-nvtxMarkEx_impl_init_v3
	.section	.rodata._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc.str1.1,"aMS",@progbits,1
.LC8:
	.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:
.LFB9410:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA9410
	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	.LC8(%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	.L795
	call	__stack_chk_fail@PLT
.L795:
	leaq	_ZN4cuda3__410cuda_errorD1Ev(%rip), %rdx
	leaq	_ZTIN4cuda3__410cuda_errorE(%rip), %rsi
	movq	%rbx, %rdi
.LEHB2:
	call	__cxa_throw@PLT
.LEHE2:
	.cfi_endproc
.LFE9410:
	.section	.gcc_except_table._ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,"aG",@progbits,_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc,comdat
.LLSDA9410:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE9410-.LLSDACSB9410
.LLSDACSB9410:
	.uleb128 .LEHB2-.LFB9410
	.uleb128 .LEHE2-.LEHB2
	.uleb128 0
	.uleb128 0
.LLSDACSE9410:
	.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
.LC9:
	.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:
.LFB9419:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA9419
	endbr64
	movl	4(%rdi), %eax
	cmpl	(%rdi), %eax
	je	.L804
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%eax, %edi
	call	cudaSetDevice@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L798
	call	cudaGetLastError@PLT
	leaq	.LC9(%rip), %rsi
	movl	%ebx, %edi
	call	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
.L798:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L804:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE9419:
	.section	.gcc_except_table._ZN4cuda3__423__ensure_current_deviceD2Ev,"aG",@progbits,_ZN4cuda3__423__ensure_current_deviceD5Ev,comdat
.LLSDA9419:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE9419-.LLSDACSB9419
.LLSDACSB9419:
.LLSDACSE9419:
	.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:
.LFB9656:
	.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	.L810
	testl	%eax, %eax
	jne	.L807
.L810:
	movl	%ebx, %eax
.L807:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE9656:
	.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:
.LFB10603:
	.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	.L817
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system16generic_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L817
	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
.L817:
	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
.LFE10603:
	.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:
.LFB10601:
	.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	.L824
	call	__stack_chk_fail@PLT
.L824:
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	movq	%rbx, %rax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE10601:
	.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:
.LFB10608:
	.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	.L828
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system15system_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L828
	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
.L828:
	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
.LFE10608:
	.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:
.LFB10653:
	.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
.LFE10653:
	.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:
.LFB10602:
	.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	.L837
	leaq	.L839(%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
.L839:
	.long	.L916-.L839
	.long	.L915-.L839
	.long	.L914-.L839
	.long	.L913-.L839
	.long	.L912-.L839
	.long	.L911-.L839
	.long	.L910-.L839
	.long	.L909-.L839
	.long	.L908-.L839
	.long	.L907-.L839
	.long	.L906-.L839
	.long	.L905-.L839
	.long	.L904-.L839
	.long	.L903-.L839
	.long	.L902-.L839
	.long	.L901-.L839
	.long	.L900-.L839
	.long	.L899-.L839
	.long	.L898-.L839
	.long	.L897-.L839
	.long	.L896-.L839
	.long	.L895-.L839
	.long	.L894-.L839
	.long	.L893-.L839
	.long	.L892-.L839
	.long	.L891-.L839
	.long	.L890-.L839
	.long	.L889-.L839
	.long	.L888-.L839
	.long	.L887-.L839
	.long	.L886-.L839
	.long	.L885-.L839
	.long	.L884-.L839
	.long	.L883-.L839
	.long	.L882-.L839
	.long	.L881-.L839
	.long	.L837-.L839
	.long	.L880-.L839
	.long	.L879-.L839
	.long	.L878-.L839
	.long	.L877-.L839
	.long	.L876-.L839
	.long	.L875-.L839
	.long	.L874-.L839
	.long	.L873-.L839
	.long	.L872-.L839
	.long	.L871-.L839
	.long	.L870-.L839
	.long	.L869-.L839
	.long	.L868-.L839
	.long	.L867-.L839
	.long	.L866-.L839
	.long	.L865-.L839
	.long	.L864-.L839
	.long	.L863-.L839
	.long	.L862-.L839
	.long	.L861-.L839
	.long	.L860-.L839
	.long	.L859-.L839
	.long	.L858-.L839
	.long	.L857-.L839
	.long	.L856-.L839
	.long	.L855-.L839
	.long	.L854-.L839
	.long	.L853-.L839
	.long	.L852-.L839
	.long	.L851-.L839
	.long	.L850-.L839
	.long	.L849-.L839
	.long	.L848-.L839
	.long	.L847-.L839
	.long	.L846-.L839
	.long	.L845-.L839
	.long	.L844-.L839
	.long	.L843-.L839
	.long	.L842-.L839
	.long	.L841-.L839
	.long	.L840-.L839
	.long	.L838-.L839
	.section	.text._ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail21system_error_category23default_error_conditionEi,comdat
.L916:
	movl	$9901, %edi
	jmp	.L918
.L915:
	movl	$9902, %edi
	jmp	.L918
.L914:
	movl	$9903, %edi
	jmp	.L918
.L913:
	movl	$9904, %edi
	jmp	.L918
.L872:
	movl	$9946, %edi
	jmp	.L918
.L871:
	movl	$9947, %edi
	jmp	.L918
.L870:
	movl	$9948, %edi
	jmp	.L918
.L869:
	movl	$9949, %edi
	jmp	.L918
.L912:
	movl	$9905, %edi
	jmp	.L918
.L868:
	movl	$9950, %edi
	jmp	.L918
.L911:
	movl	$9906, %edi
	jmp	.L918
.L910:
	movl	$9907, %edi
	jmp	.L918
.L909:
	movl	$9908, %edi
	jmp	.L918
.L908:
	movl	$9909, %edi
	jmp	.L918
.L867:
	movl	$9951, %edi
	jmp	.L918
.L907:
	movl	$9910, %edi
	jmp	.L918
.L866:
	movl	$9952, %edi
	jmp	.L918
.L865:
	movl	$9953, %edi
	jmp	.L918
.L864:
	movl	$9954, %edi
	jmp	.L918
.L863:
	movl	$9955, %edi
	jmp	.L918
.L862:
	movl	$9956, %edi
	jmp	.L918
.L861:
	movl	$9957, %edi
	jmp	.L918
.L876:
	movl	$9942, %edi
	jmp	.L918
.L906:
	movl	$9911, %edi
	jmp	.L918
.L905:
	movl	$9912, %edi
	jmp	.L918
.L873:
	movl	$9945, %edi
	jmp	.L918
.L860:
	movl	$9958, %edi
	jmp	.L918
.L859:
	movl	$9959, %edi
	jmp	.L918
.L875:
	movl	$9943, %edi
	jmp	.L918
.L858:
	movl	$9960, %edi
	jmp	.L918
.L857:
	movl	$9961, %edi
	jmp	.L918
.L856:
	movl	$9962, %edi
	jmp	.L918
.L904:
	movl	$9913, %edi
	jmp	.L918
.L903:
	movl	$9914, %edi
	jmp	.L918
.L902:
	movl	$9915, %edi
	jmp	.L918
.L901:
	movl	$9916, %edi
	jmp	.L918
.L900:
	movl	$9917, %edi
	jmp	.L918
.L855:
	movl	$9963, %edi
	jmp	.L918
.L899:
	movl	$9918, %edi
	jmp	.L918
.L854:
	movl	$9964, %edi
	jmp	.L918
.L898:
	movl	$9919, %edi
	jmp	.L918
.L897:
	movl	$9920, %edi
	jmp	.L918
.L896:
	movl	$9921, %edi
	jmp	.L918
.L853:
	movl	$9965, %edi
	jmp	.L918
.L895:
	movl	$9922, %edi
	jmp	.L918
.L852:
	movl	$9966, %edi
	jmp	.L918
.L851:
	movl	$9967, %edi
	jmp	.L918
.L850:
	movl	$9968, %edi
	jmp	.L918
.L849:
	movl	$9969, %edi
	jmp	.L918
.L848:
	movl	$9970, %edi
	jmp	.L918
.L894:
	movl	$9923, %edi
	jmp	.L918
.L893:
	movl	$9924, %edi
	jmp	.L918
.L892:
	movl	$9925, %edi
	jmp	.L918
.L847:
	movl	$9971, %edi
	jmp	.L918
.L891:
	movl	$9926, %edi
	jmp	.L918
.L890:
	movl	$9927, %edi
	jmp	.L918
.L889:
	movl	$9928, %edi
	jmp	.L918
.L846:
	movl	$9972, %edi
	jmp	.L918
.L888:
	movl	$9929, %edi
	jmp	.L918
.L887:
	movl	$9930, %edi
	jmp	.L918
.L886:
	movl	$9931, %edi
	jmp	.L918
.L845:
	movl	$9973, %edi
	jmp	.L918
.L885:
	movl	$9932, %edi
	jmp	.L918
.L884:
	movl	$9933, %edi
	jmp	.L918
.L844:
	movl	$9974, %edi
	jmp	.L918
.L843:
	movl	$9975, %edi
	jmp	.L918
.L842:
	movl	$9976, %edi
	jmp	.L918
.L874:
	movl	$9944, %edi
	jmp	.L918
.L883:
	movl	$9934, %edi
	jmp	.L918
.L882:
	movl	$9935, %edi
	jmp	.L918
.L881:
	movl	$9936, %edi
	jmp	.L918
.L880:
	movl	$9938, %edi
	jmp	.L918
.L841:
	movl	$9977, %edi
	jmp	.L918
.L840:
	movl	$9978, %edi
	jmp	.L918
.L838:
	movl	$9979, %edi
	jmp	.L918
.L879:
	movl	$9939, %edi
	jmp	.L918
.L878:
	movl	$9940, %edi
	jmp	.L918
.L877:
	movl	$9941, %edi
.L918:
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	_ZN6thrust20THRUST_200700_890_NS6system20make_error_conditionENS1_4errc6errc_tE
.L837:
	.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
.LFE10602:
	.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:
.LFB10663:
	.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	.L921
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEvE6result(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L921
	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
.L921:
	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
.LFE10663:
	.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:
.LFB10662:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movl	%esi, %ebx
	cmpl	$998, %esi
	jg	.L928
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movq	%rax, %rdx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	ret
.L928:
	.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
.LFE10662:
	.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:
.LFB10707:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA10707
	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	.L932
	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
.L935:
	endbr64
	movq	%rax, %rbp
.L934:
	movq	%rbx, %rdi
	call	__cxa_free_exception@PLT
	movq	%rbp, %rdi
	call	_Unwind_Resume@PLT
.LEHE5:
.L932:
	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
.LFE10707:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc,comdat
.LLSDA10707:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE10707-.LLSDACSB10707
.LLSDACSB10707:
	.uleb128 .LEHB3-.LFB10707
	.uleb128 .LEHE3-.LEHB3
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB4-.LFB10707
	.uleb128 .LEHE4-.LEHB4
	.uleb128 .L935-.LFB10707
	.uleb128 0
	.uleb128 .LEHB5-.LFB10707
	.uleb128 .LEHE5-.LEHB5
	.uleb128 0
	.uleb128 0
.LLSDACSE10707:
	.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
.LC10:
	.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:
.LFB13675:
	.cfi_startproc
	endbr64
	pushq	%rcx
	.cfi_def_cfa_offset 16
	movq	%rsi, %rdi
	call	cudaFree@PLT
	testl	%eax, %eax
	je	.L937
	movl	%eax, %edi
	leaq	.LC10(%rip), %rsi
	popq	%rdx
	.cfi_remember_state
	.cfi_def_cfa_offset 8
	jmp	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.L937:
	.cfi_restore_state
	popq	%rax
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13675:
	.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:
.LFB13626:
	.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
.LFE13626:
	.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._ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC5ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.type	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE, @function
_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE:
.LFB10996:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA10996
	endbr64
	leaq	16+_ZTVN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rax
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%ecx, %ecx
	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
	leaq	8(%rdi), %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	movq	%rdi, %rbx
	pushq	%rdx
	.cfi_def_cfa_offset 48
	movq	%rax, (%rdi)
	leaq	24(%rdi), %rax
	movq	%rcx, 16(%rdi)
	movq	%rax, 8(%rdi)
	movb	$0, 24(%rdi)
	call	_ZNKSt9bad_alloc4whatEv@PLT
	movq	%rax, %rdi
	movq	%rax, %r12
	call	strlen@PLT
	movq	16(%rbx), %rdx
	movq	%r12, %rcx
	xorl	%esi, %esi
	movq	%rax, %r8
	movq	%rbp, %rdi
.LEHB6:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm@PLT
	leaq	.LC4(%rip), %rsi
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
	movq	%r13, %rsi
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendERKS4_@PLT
.LEHE6:
	popq	%rax
	.cfi_remember_state
	.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
.L943:
	.cfi_restore_state
	endbr64
	movq	%rax, %r12
.L942:
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%rbx, %rdi
	call	_ZNSt9bad_allocD2Ev@PLT
	movq	%r12, %rdi
.LEHB7:
	call	_Unwind_Resume@PLT
.LEHE7:
	.cfi_endproc
.LFE10996:
	.section	.gcc_except_table._ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,"aG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC5ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,comdat
.LLSDA10996:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE10996-.LLSDACSB10996
.LLSDACSB10996:
	.uleb128 .LEHB6-.LFB10996
	.uleb128 .LEHE6-.LEHB6
	.uleb128 .L943-.LFB10996
	.uleb128 0
	.uleb128 .LEHB7-.LFB10996
	.uleb128 .LEHE7-.LEHB7
	.uleb128 0
	.uleb128 0
.LLSDACSE10996:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC5ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE, .-_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.weak	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.set	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE,_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
	.text
	.globl	_Z9getMinMaxPiiiS_
	.type	_Z9getMinMaxPiiiS_, @function
_Z9getMinMaxPiiiS_:
.LFB12215:
	.cfi_startproc
	endbr64
	pushq	%rax
	.cfi_def_cfa_offset 16
	popq	%rax
	.cfi_def_cfa_offset 8
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movl	$1, 12(%rsp)
	movl	12(%rsp), %edi
	call	exit@PLT
	.cfi_endproc
.LFE12215:
	.size	_Z9getMinMaxPiiiS_, .-_Z9getMinMaxPiiiS_
	.section	.text._ZN10dataArraysIiEC2ERKS0_,"axG",@progbits,_ZN10dataArraysIiEC5ERKS0_,comdat
	.align 2
	.weak	_ZN10dataArraysIiEC2ERKS0_
	.type	_ZN10dataArraysIiEC2ERKS0_, @function
_ZN10dataArraysIiEC2ERKS0_:
.LFB12258:
	.cfi_startproc
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	movq	%rsi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	movq	8(%rsi), %rbp
	movq	%rdi, %rbx
	subq	(%rsi), %rbp
	movq	$0, (%rdi)
	movq	$0, 8(%rdi)
	movq	$0, 16(%rdi)
	je	.L953
	movabsq	$9223372036854775804, %rax
	cmpq	%rbp, %rax
	jnb	.L950
	call	_ZSt28__throw_bad_array_new_lengthv@PLT
.L950:
	movq	%rbp, %rdi
	call	_Znwm@PLT
	movq	%rax, %rcx
	jmp	.L949
.L953:
	xorl	%ecx, %ecx
.L949:
	addq	%rcx, %rbp
	movq	%rcx, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rbp, 16(%rbx)
	movq	(%r12), %rsi
	movq	8(%r12), %rbp
	subq	%rsi, %rbp
	cmpq	$4, %rbp
	jle	.L951
	movq	%rcx, %rdi
	movq	%rbp, %rdx
	call	memmove@PLT
	movq	%rax, %rcx
	jmp	.L952
.L951:
	jne	.L952
	movl	(%rsi), %eax
	movl	%eax, (%rcx)
.L952:
	movq	24(%r12), %rax
	addq	%rbp, %rcx
	movq	%rcx, 8(%rbx)
	movq	%rax, 24(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12258:
	.size	_ZN10dataArraysIiEC2ERKS0_, .-_ZN10dataArraysIiEC2ERKS0_
	.weak	_ZN10dataArraysIiEC1ERKS0_
	.set	_ZN10dataArraysIiEC1ERKS0_,_ZN10dataArraysIiEC2ERKS0_
	.text
	.globl	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
	.type	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i, @function
_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i:
.LFB12284:
	.cfi_startproc
	endbr64
	subq	$120, %rsp
	.cfi_def_cfa_offset 128
	movq	%rdi, 24(%rsp)
	leaq	48(%rsp), %rcx
	leaq	56(%rsp), %rdi
	movq	%rsi, 16(%rsp)
	leaq	68(%rsp), %rsi
	movl	%edx, 12(%rsp)
	leaq	40(%rsp), %rdx
	movq	%fs:40, %rax
	movq	%rax, 104(%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	12(%rsp), %rax
	movq	%rax, 96(%rsp)
	movabsq	$4294967297, %rax
	movq	%rax, 56(%rsp)
	movq	%rax, 68(%rsp)
	movl	$1, 76(%rsp)
	call	__cudaPopCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L955
	pushq	48(%rsp)
	.cfi_def_cfa_offset 136
	leaq	_Z15getNumOfBucketsPiS_i(%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
.L955:
	movq	104(%rsp), %rax
	subq	%fs:40, %rax
	je	.L957
	call	__stack_chk_fail@PLT
.L957:
	addq	$120, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12284:
	.size	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i, .-_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
	.globl	_Z15getNumOfBucketsPiS_i
	.type	_Z15getNumOfBucketsPiS_i, @function
_Z15getNumOfBucketsPiS_i:
.LFB12285:
	.cfi_startproc
	endbr64
	jmp	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
	.cfi_endproc
.LFE12285:
	.size	_Z15getNumOfBucketsPiS_i, .-_Z15getNumOfBucketsPiS_i
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC11:
	.string	"_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_"
.LC12:
	.string	"_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_"
.LC13:
	.string	"_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_"
.LC14:
	.string	"_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_"
.LC15:
	.string	"_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_"
.LC16:
	.string	"_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i"
.LC17:
	.string	"_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv"
.LC18:
	.string	"_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i"
.LC19:
	.string	"_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i"
.LC20:
	.string	"_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i"
.LC21:
	.string	"_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i"
.LC22:
	.string	"_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i"
.LC23:
	.string	"_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i"
.LC24:
	.string	"_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i"
.LC25:
	.string	"_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i"
.LC26:
	.string	"_Z11splitterKerIiLi100EEvPT_S1_PiS2_i"
.LC27:
	.string	"_Z15getNumOfBucketsPiS_i"
.LC28:
	.string	"precalc_xorwow_matrix"
.LC29:
	.string	"precalc_xorwow_offset_matrix"
.LC30:
	.string	"mrg32k3aM1"
.LC31:
	.string	"mrg32k3aM2"
.LC32:
	.string	"mrg32k3aM1SubSeq"
.LC33:
	.string	"mrg32k3aM2SubSeq"
.LC34:
	.string	"mrg32k3aM1Seq"
.LC35:
	.string	"mrg32k3aM2Seq"
.LC36:
	.string	"__cr_lgamma_table"
.LC37:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo5beginE"
.LC38:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo3endE"
.LC39:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo6cbeginE"
.LC40:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo4cendE"
.LC41:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo6rbeginE"
.LC42:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo4rendE"
.LC43:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo7crbeginE"
.LC44:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__45__cpo5crendE"
.LC45:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE"
.LC46:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__419piecewise_constructE"
.LC47:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__48in_placeE"
.LC48:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__420unreachable_sentinelE"
.LC49:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std3__47nulloptE"
.LC50:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4swapE"
.LC51:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo9iter_moveE"
.LC52:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo7advanceE"
.LC53:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo5beginE"
.LC54:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo3endE"
.LC55:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo6cbeginE"
.LC56:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4cendE"
.LC57:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo9iter_swapE"
.LC58:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4nextE"
.LC59:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4prevE"
.LC60:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4dataE"
.LC61:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo5cdataE"
.LC62:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo4sizeE"
.LC63:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo5ssizeE"
.LC64:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875594cuda3std6ranges3__45__cpo8distanceE"
.LC65:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS8cuda_cub3parE"
.LC66:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS8cuda_cub10par_nosyncE"
.LC67:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS6system6detail10sequential3seqE"
.LC68:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_1E"
.LC69:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_2E"
.LC70:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_3E"
.LC71:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_4E"
.LC72:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_5E"
.LC73:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_6E"
.LC74:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_7E"
.LC75:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_8E"
.LC76:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders2_9E"
.LC77:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS12placeholders3_10E"
.LC78:
	.string	"_ZN51_INTERNAL_2126c073_20_GPU_ArraySort_2_0_cu_afb875596thrust20THRUST_200700_890_NS3seqE"
	.section	.text.startup,"ax",@progbits
	.type	_ZL24__sti____cudaRegisterAllv, @function
_ZL24__sti____cudaRegisterAllv:
.LFB12319:
	.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	.LC11(%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_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_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	.LC12(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%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	.LC13(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%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_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%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_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%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_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_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	.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	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_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
	movq	%rbx, %rdi
	leaq	.LC19(%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	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i(%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	.LC20(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_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	.LC21(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_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	.LC22(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_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	.LC23(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_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	.LC24(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_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	.LC25(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_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	.LC26(%rip), %rdx
	movq	%rbx, %rdi
	leaq	_Z11splitterKerIiLi100EEvPT_S1_PiS2_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
	movq	%rbx, %rdi
	leaq	.LC27(%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	_Z15getNumOfBucketsPiS_i(%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	%r8d, %r8d
	movq	%rbx, %rdi
	pushq	$0
	.cfi_def_cfa_offset 24
	leaq	.LC28(%rip), %rdx
	movl	$102400, %r9d
	leaq	_ZL21precalc_xorwow_matrix(%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	.LC29(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$102400, %r9d
	leaq	_ZL28precalc_xorwow_offset_matrix(%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	.LC30(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2304, %r9d
	leaq	_ZL10mrg32k3aM1(%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	.LC31(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2304, %r9d
	leaq	_ZL10mrg32k3aM2(%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	.LC32(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2016, %r9d
	leaq	_ZL16mrg32k3aM1SubSeq(%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	.LC33(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2016, %r9d
	leaq	_ZL16mrg32k3aM2SubSeq(%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	.LC34(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2304, %r9d
	leaq	_ZL13mrg32k3aM1Seq(%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	.LC35(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$2304, %r9d
	leaq	_ZL13mrg32k3aM2Seq(%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	$1
	.cfi_def_cfa_offset 32
	leaq	.LC36(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$72, %r9d
	leaq	_ZL17__cr_lgamma_table(%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	.LC37(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo5beginE(%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	.LC38(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo3endE(%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	.LC39(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo6cbeginE(%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	.LC40(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo4cendE(%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	.LC41(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo6rbeginE(%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	.LC42(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo4rendE(%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	.LC43(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo7crbeginE(%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	.LC44(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__45__cpo5crendE(%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	.LC45(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE(%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	.LC46(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__419piecewise_constructE(%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	.LC47(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__48in_placeE(%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	.LC48(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std3__420unreachable_sentinelE(%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	.LC49(%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	.LC50(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4swapE(%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	.LC51(%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	%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	.LC52(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo7advanceE(%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	.LC53(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5beginE(%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	.LC54(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__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	.LC55(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__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	.LC56(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__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	.LC57(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo9iter_swapE(%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	.LC58(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4nextE(%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	.LC59(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4prevE(%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	.LC60(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4dataE(%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	.LC61(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5cdataE(%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	.LC62(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo4sizeE(%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	.LC63(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo5ssizeE(%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	.LC64(%rip), %rdx
	xorl	%r8d, %r8d
	movq	%rbx, %rdi
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN4cuda3std6ranges3__45__cpo8distanceE(%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	.LC65(%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	%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	.LC66(%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	%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	.LC67(%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	%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	.LC68(%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	%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	.LC69(%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	%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	.LC70(%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	%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	.LC71(%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	%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	.LC72(%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	%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	.LC73(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_6E(%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	.LC74(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_7E(%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	.LC75(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_8E(%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	.LC76(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL2_9E(%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	.LC77(%rip), %rdx
	movq	%rbx, %rdi
	xorl	%r8d, %r8d
	movq	%rdx, %rcx
	movl	$1, %r9d
	leaq	_ZN6thrust20THRUST_200700_890_NS12placeholdersL3_10E(%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	.LC78(%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	%rax
	.cfi_def_cfa_offset 24
	popq	%rdx
	.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
.LFE12319:
	.size	_ZL24__sti____cudaRegisterAllv, .-_ZL24__sti____cudaRegisterAllv
	.section	.init_array,"aw"
	.align 8
	.quad	_ZL24__sti____cudaRegisterAllv
	.section	.text._ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev,"axG",@progbits,_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD5Ev,comdat
	.align 2
	.weak	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev
	.type	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev, @function
_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev:
.LFB12398:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	call	__errno_location@PLT
	cmpl	$0, (%rax)
	jne	.L962
	movl	(%rbx), %edx
	movl	%edx, (%rax)
.L962:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE12398:
	.size	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev, .-_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev
	.weak	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD1Ev
	.set	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD1Ev,_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev
	.section	.text._ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,"axG",@progbits,_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,comdat
	.weak	_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_
	.type	_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_, @function
_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_:
.LFB12393:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12393
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	movq	%rdi, %r15
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movq	%rsi, %r14
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rcx, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rdx, %rbx
	subq	$56, %rsp
	.cfi_def_cfa_offset 112
	movl	%r8d, 12(%rsp)
	leaq	28(%rsp), %r13
	movq	%fs:40, %rax
	movq	%rax, 40(%rsp)
	xorl	%eax, %eax
	call	__errno_location@PLT
	movl	12(%rsp), %edx
	leaq	32(%rsp), %rsi
	movq	%rbx, %rdi
	movq	%rax, %rbp
	movl	(%rax), %eax
	movl	%eax, 28(%rsp)
	xorl	%eax, %eax
	movl	%eax, 0(%rbp)
.LEHB8:
	call	*%r15
	movq	32(%rsp), %rdx
	cmpq	%rbx, %rdx
	jne	.L966
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L979
	movq	%r14, %rdi
	call	_ZSt24__throw_invalid_argumentPKc@PLT
.L966:
	cmpl	$34, 0(%rbp)
	je	.L968
	movl	$2147483648, %ecx
	movl	$4294967295, %esi
	addq	%rax, %rcx
	cmpq	%rcx, %rsi
	jnb	.L969
.L968:
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L979
	movq	%r14, %rdi
	call	_ZSt20__throw_out_of_rangePKc@PLT
.LEHE8:
.L969:
	testq	%r12, %r12
	je	.L971
	subq	%rbx, %rdx
	movq	%rdx, (%r12)
.L971:
	movq	%r13, %rdi
	movl	%eax, 12(%rsp)
	call	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD1Ev
	movl	12(%rsp), %eax
	movq	40(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L974
	jmp	.L979
.L975:
	endbr64
	movq	%rax, %rbx
.L972:
	movq	%r13, %rdi
	call	_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD1Ev
	movq	40(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L979
	movq	%rbx, %rdi
.LEHB9:
	call	_Unwind_Resume@PLT
.LEHE9:
.L979:
	call	__stack_chk_fail@PLT
.L974:
	addq	$56, %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
.LFE12393:
	.section	.gcc_except_table._ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,"aG",@progbits,_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,comdat
.LLSDA12393:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12393-.LLSDACSB12393
.LLSDACSB12393:
	.uleb128 .LEHB8-.LFB12393
	.uleb128 .LEHE8-.LEHB8
	.uleb128 .L975-.LFB12393
	.uleb128 0
	.uleb128 .LEHB9-.LFB12393
	.uleb128 .LEHE9-.LEHB9
	.uleb128 0
	.uleb128 0
.LLSDACSE12393:
	.section	.text._ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,"axG",@progbits,_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_,comdat
	.size	_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_, .-_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_
	.section	.rodata._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.str1.1,"aMS",@progbits,1
.LC79:
	.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_:
.LFB12620:
	.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	.L983
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L988
	leaq	.LC79(%rip), %rdi
	call	_ZSt19__throw_logic_errorPKc@PLT
.L983:
	movq	%rdi, %rbx
	movq	%rsi, %rdi
	movq	%rsi, %rbp
	call	strlen@PLT
	movq	%rax, (%rsp)
	leaq	0(%rbp,%rax), %r12
	cmpq	$15, %rax
	jbe	.L985
	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)
.L985:
	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	.L986
.L988:
	call	__stack_chk_fail@PLT
.L986:
	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
.LFE12620:
	.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
.LC80:
	.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:
.LFB10596:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA10596
	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	.L991
	leaq	_ZGVZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %rbp
	movq	%rbp, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L991
	leaq	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %r13
	leaq	7(%rsp), %rdx
	leaq	.LC80(%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
.L991:
	movl	%r12d, %edi
	call	strerror@PLT
	movq	%rax, %rsi
	testq	%rax, %rax
	je	.L993
	leaq	7(%rsp), %rdx
	movq	%rbx, %rdi
.LEHB11:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
	jmp	.L989
.L993:
	leaq	_ZZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11EiE11unknown_err(%rip), %rsi
	movq	%rbx, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1ERKS4_@PLT
	jmp	.L989
.L998:
	endbr64
	movq	%rax, %rbx
.L995:
	movq	%rbp, %rdi
	call	__cxa_guard_abort@PLT
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1003
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE11:
.L989:
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	je	.L997
.L1003:
	call	__stack_chk_fail@PLT
.L997:
	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
.LFE10596:
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system6detail22generic_error_category7messageB5cxx11Ei,comdat
.LLSDA10596:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE10596-.LLSDACSB10596
.LLSDACSB10596:
	.uleb128 .LEHB10-.LFB10596
	.uleb128 .LEHE10-.LEHB10
	.uleb128 .L998-.LFB10596
	.uleb128 0
	.uleb128 .LEHB11-.LFB10596
	.uleb128 .LEHE11-.LEHB11
	.uleb128 0
	.uleb128 0
.LLSDACSE10596:
	.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
.LC81:
	.string	"unknown error"
.LC82:
	.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:
.LFB10661:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA10661
	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	.L1005
	leaq	.LC81(%rip), %rbx
.L1005:
	testq	%rsi, %rsi
	jne	.L1006
	leaq	.LC82(%rip), %rsi
.L1006:
	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	.L1010
	jmp	.L1015
.L1014:
	endbr64
	movq	%rax, %rbx
.L1007:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1008
.L1013:
	endbr64
	movq	%rax, %rbx
.L1008:
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	72(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1015
	movq	%rbx, %rdi
.LEHB15:
	call	_Unwind_Resume@PLT
.LEHE15:
.L1015:
	call	__stack_chk_fail@PLT
.L1010:
	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
.LFE10661:
	.section	.gcc_except_table._ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust20THRUST_200700_890_NS6system8cuda_cub6detail19cuda_error_category7messageB5cxx11Ei,comdat
.LLSDA10661:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE10661-.LLSDACSB10661
.LLSDACSB10661:
	.uleb128 .LEHB12-.LFB10661
	.uleb128 .LEHE12-.LEHB12
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB13-.LFB10661
	.uleb128 .LEHE13-.LEHB13
	.uleb128 .L1013-.LFB10661
	.uleb128 0
	.uleb128 .LEHB14-.LFB10661
	.uleb128 .LEHE14-.LEHB14
	.uleb128 .L1014-.LFB10661
	.uleb128 0
	.uleb128 .LEHB15-.LFB10661
	.uleb128 .LEHE15-.LEHB15
	.uleb128 0
	.uleb128 0
.LLSDACSE10661:
	.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:
.LFB13676:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13676
	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
	subq	$104, %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	.L1018
	movl	%eax, %ebx
	leaq	24(%rsp), %r12
	call	cudaGetLastError@PLT
.LEHE16:
	movl	$40, %edi
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rbp
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movl	%ebx, %edx
	movq	%r12, %rdi
	movq	%rax, %rsi
	movq	(%rax), %rax
.LEHB17:
	call	*48(%rax)
.LEHE17:
	leaq	56(%rsp), %r13
	movq	24(%rsp), %rsi
	leaq	15(%rsp), %rdx
	movq	%r13, %rdi
.LEHB18:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE18:
	movq	%r13, %rsi
	movq	%rbp, %rdi
.LEHB19:
	call	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.LEHE19:
	movq	%r13, %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	.L1028
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev(%rip), %rdx
	leaq	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rsi
	movq	%rbp, %rdi
.LEHB20:
	call	__cxa_throw@PLT
.L1018:
	movq	16(%rsp), %rax
	movq	88(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1024
	jmp	.L1028
.L1027:
	endbr64
	movq	%rax, %rbx
.L1020:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1021
.L1026:
	endbr64
	movq	%rax, %rbx
.L1021:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1022
.L1025:
	endbr64
	movq	%rax, %rbx
.L1022:
	movq	%rbp, %rdi
	call	__cxa_free_exception@PLT
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1028
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE20:
.L1028:
	call	__stack_chk_fail@PLT
.L1024:
	addq	$104, %rsp
	.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
.LFE13676:
	.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
.LLSDA13676:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13676-.LLSDACSB13676
.LLSDACSB13676:
	.uleb128 .LEHB16-.LFB13676
	.uleb128 .LEHE16-.LEHB16
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB17-.LFB13676
	.uleb128 .LEHE17-.LEHB17
	.uleb128 .L1025-.LFB13676
	.uleb128 0
	.uleb128 .LEHB18-.LFB13676
	.uleb128 .LEHE18-.LEHB18
	.uleb128 .L1026-.LFB13676
	.uleb128 0
	.uleb128 .LEHB19-.LFB13676
	.uleb128 .LEHE19-.LEHB19
	.uleb128 .L1027-.LFB13676
	.uleb128 0
	.uleb128 .LEHB20-.LFB13676
	.uleb128 .LEHE20-.LEHB20
	.uleb128 0
	.uleb128 0
.LLSDACSE13676:
	.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:
.LFB13627:
	.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
.LFE13627:
	.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	.rodata._ZN3cub17CUB_200700_890_NS23PerDeviceAttributeCacheclIZNS0_10PtxVersionERiiEUlS3_E_EENS1_13DevicePayloadEOT_i.str1.1,"aMS",@progbits,1
.LC83:
	.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:
.LFB12724:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12724
	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	.L1035
	leaq	_ZGVZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1035
	movq	%rsp, %rdi
	movl	$-1, (%rsp)
.LEHB21:
	call	cudaGetDeviceCount@PLT
	movl	%eax, %ebp
	call	cudaGetLastError@PLT
.LEHE21:
	testl	%ebp, %ebp
	sete	%dl
	testl	%eax, %eax
	setne	%al
	testb	%al, %dl
	jne	.L1062
	testl	%ebp, %ebp
	je	.L1037
.L1062:
	movl	$-1, (%rsp)
.L1037:
	movl	(%rsp), %eax
	movq	%r14, %rdi
	movl	%eax, _ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip)
	call	__cxa_guard_release@PLT
.L1035:
	cmpl	_ZZN3cub17CUB_200700_890_NS22DeviceCountCachedValueEvE5count(%rip), %ebx
	jge	.L1039
	testl	%ebx, %ebx
	js	.L1039
	jmp	.L1083
.L1060:
	endbr64
	movq	%rax, %rbx
.L1041:
	movq	%r14, %rdi
	call	__cxa_guard_abort@PLT
	jmp	.L1082
.L1083:
	imulq	$12, %rbx, %rbp
	addq	%r13, %rbp
	movl	0(%rbp), %eax
	cmpl	$2, %eax
	je	.L1057
	jmp	.L1084
.L1039:
	movl	$101, %eax
	salq	$32, %rax
	jmp	.L1045
.L1084:
	xorl	%eax, %eax
	movl	$1, %edx
	lock cmpxchgl	%edx, 0(%rbp)
	jne	.L1046
	movl	(%r12), %eax
	leaq	4(%rsp), %rdi
	movl	%eax, (%rsp)
	xorl	%eax, %eax
	movl	%eax, 4(%rsp)
.LEHB22:
	call	cudaGetDevice@PLT
	movl	%eax, %r12d
	testl	%eax, %eax
	je	.L1047
	call	cudaGetLastError@PLT
	leaq	.LC83(%rip), %rsi
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1081
	jmp	.L1080
.L1047:
	movl	(%rsp), %edi
	cmpl	%edi, 4(%rsp)
	je	.L1049
	call	cudaSetDevice@PLT
	movl	%eax, %r12d
	testl	%eax, %eax
	je	.L1049
	call	cudaGetLastError@PLT
	leaq	.LC9(%rip), %rsi
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1080
.L1081:
	movl	%r12d, %edi
	call	_ZN4cuda3__418__throw_cuda_errorE9cudaErrorPKc
.LEHE22:
.L1049:
	leaq	8(%rsp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS11EmptyKernelIvEEvv(%rip), %rsi
	movq	%rsp, %r15
.LEHB23:
	call	cudaFuncGetAttributes@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
.LEHE23:
	movl	%eax, %r12d
	testl	%r14d, %r14d
	jne	.L1063
	testl	%eax, %eax
	jne	.L1051
.L1063:
	movl	%r14d, %r12d
.L1051:
	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	.L1054
.LEHB24:
	call	cudaGetLastError@PLT
	jmp	.L1054
.L1061:
	endbr64
	movq	%rax, %rbx
.L1055:
	movq	%r15, %rdi
	call	_ZN4cuda3__423__ensure_current_deviceD1Ev
.L1082:
	movq	152(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1080
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE24:
.L1054:
	movl	$2, 0(%rbp)
	jmp	.L1057
.L1046:
	decl	%eax
	jne	.L1057
.L1058:
	movl	0(%rbp), %eax
	cmpl	$2, %eax
	jne	.L1058
.L1057:
	imulq	$12, %rbx, %rbx
	movq	4(%r13,%rbx), %rax
.L1045:
	movq	152(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1059
.L1080:
	call	__stack_chk_fail@PLT
.L1059:
	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
.LFE12724:
	.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
.LLSDA12724:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12724-.LLSDACSB12724
.LLSDACSB12724:
	.uleb128 .LEHB21-.LFB12724
	.uleb128 .LEHE21-.LEHB21
	.uleb128 .L1060-.LFB12724
	.uleb128 0
	.uleb128 .LEHB22-.LFB12724
	.uleb128 .LEHE22-.LEHB22
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB23-.LFB12724
	.uleb128 .LEHE23-.LEHB23
	.uleb128 .L1061-.LFB12724
	.uleb128 0
	.uleb128 .LEHB24-.LFB12724
	.uleb128 .LEHE24-.LEHB24
	.uleb128 0
	.uleb128 0
.LLSDACSE12724:
	.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:
.LFB9652:
	.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	.L1092
	testl	%ebx, %ebx
	jne	.L1092
	movl	4(%rsp), %r12d
	jmp	.L1086
.L1092:
	orl	$-1, %r12d
.L1086:
	movb	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %al
	leaq	_ZZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %rbx
	testb	%al, %al
	jne	.L1088
	leaq	_ZGVZN3cub17CUB_200700_890_NS26GetPerDeviceAttributeCacheINS0_18PtxVersionCacheTagEEERNS0_23PerDeviceAttributeCacheEvE5cache(%rip), %r14
	movq	%r14, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L1088
	movl	$384, %ecx
	xorl	%eax, %eax
	movq	%rbx, %rdi
	rep stosl
	movq	%r14, %rdi
	call	__cxa_guard_release@PLT
.L1088:
	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	.L1085
	movl	%ebx, 0(%rbp)
.L1085:
	movq	8(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1091
	call	__stack_chk_fail@PLT
.L1091:
	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
.LFE9652:
	.size	_ZN3cub17CUB_200700_890_NS10PtxVersionERi, .-_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	.section	.text._ZNSt6vectorIiSaIiEED2Ev,"axG",@progbits,_ZNSt6vectorIiSaIiEED5Ev,comdat
	.align 2
	.weak	_ZNSt6vectorIiSaIiEED2Ev
	.type	_ZNSt6vectorIiSaIiEED2Ev, @function
_ZNSt6vectorIiSaIiEED2Ev:
.LFB12824:
	.cfi_startproc
	endbr64
	movq	(%rdi), %rax
	testq	%rax, %rax
	je	.L1097
	movq	16(%rdi), %rsi
	movq	%rax, %rdi
	subq	%rax, %rsi
	jmp	_ZdlPvm@PLT
.L1097:
	ret
	.cfi_endproc
.LFE12824:
	.size	_ZNSt6vectorIiSaIiEED2Ev, .-_ZNSt6vectorIiSaIiEED2Ev
	.weak	_ZNSt6vectorIiSaIiEED1Ev
	.set	_ZNSt6vectorIiSaIiEED1Ev,_ZNSt6vectorIiSaIiEED2Ev
	.section	.rodata._ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_.str1.1,"aMS",@progbits,1
.LC84:
	.string	"vector::_M_realloc_insert"
	.section	.text._ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_,"axG",@progbits,_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_,comdat
	.align 2
	.weak	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	.type	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_, @function
_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_:
.LFB13104:
	.cfi_startproc
	endbr64
	movabsq	$2305843009213693951, %rcx
	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
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	subq	$24, %rsp
	.cfi_def_cfa_offset 80
	movq	8(%rdi), %rax
	movq	(%rdi), %r14
	movq	%rax, %rbx
	movq	%rax, (%rsp)
	subq	%r14, %rbx
	sarq	$2, %rbx
	cmpq	%rcx, %rbx
	jne	.L1100
	leaq	.LC84(%rip), %rdi
	call	_ZSt20__throw_length_errorPKc@PLT
.L1100:
	cmpq	%r14, (%rsp)
	movl	$1, %eax
	movq	%rsi, %r15
	movq	%rdi, %r13
	cmovne	%rbx, %rax
	movq	%rsi, %rbp
	addq	%rax, %rbx
	setc	%al
	subq	%r14, %r15
	movzbl	%al, %eax
	testq	%rax, %rax
	jne	.L1110
	xorl	%r12d, %r12d
	testq	%rbx, %rbx
	je	.L1105
	movabsq	$2305843009213693951, %rax
	cmpq	%rax, %rbx
	cmova	%rax, %rbx
	jmp	.L1104
.L1110:
	movq	%rcx, %rbx
.L1104:
	leaq	0(,%rbx,4), %rdi
	movq	%rdx, 8(%rsp)
	call	_Znwm@PLT
	movq	8(%rsp), %rdx
	movq	%rax, %r12
.L1105:
	movl	(%rdx), %eax
	movl	%eax, (%r12,%r15)
	testq	%r15, %r15
	jle	.L1106
	movq	%r15, %rdx
	movq	%r14, %rsi
	movq	%r12, %rdi
	call	memmove@PLT
.L1106:
	movq	(%rsp), %rax
	leaq	4(%r12,%r15), %rdx
	subq	%rbp, %rax
	testq	%rax, %rax
	jle	.L1107
	movq	%rdx, %rdi
	movq	%rbp, %rsi
	movq	%rax, %rcx
	rep movsb
.L1107:
	leaq	(%rdx,%rax), %rbp
	testq	%r14, %r14
	je	.L1108
	movq	16(%r13), %rsi
	movq	%r14, %rdi
	subq	%r14, %rsi
	call	_ZdlPvm@PLT
.L1108:
	leaq	(%r12,%rbx,4), %rax
	movq	%r12, 0(%r13)
	movq	%rbp, 8(%r13)
	movq	%rax, 16(%r13)
	addq	$24, %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
.LFE13104:
	.size	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_, .-_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	.section	.rodata.str1.1
.LC85:
	.string	"../Futhark/list_"
.LC86:
	.string	"_"
.LC87:
	.string	".in"
.LC88:
	.string	"Error reading file "
.LC89:
	.string	"\n"
.LC90:
	.string	"Can't read file"
	.text
	.globl	_Z8readFileii
	.type	_Z8readFileii, @function
_Z8readFileii:
.LFB12226:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12226
	endbr64
	pushq	%r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	pushq	%r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	movl	%esi, %r14d
	movl	%edx, %esi
	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
	movl	%edx, %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rdi, %rbx
	subq	$744, %rsp
	.cfi_def_cfa_offset 800
	movq	%fs:40, %rax
	movq	%rax, 728(%rsp)
	xorl	%eax, %eax
	leaq	176(%rsp), %rax
	movq	%rax, %rdi
	movq	%rax, 8(%rsp)
	call	_ZNSt7__cxx119to_stringEi
	leaq	80(%rsp), %rax
	movl	%r14d, %esi
	movq	%rax, %rdi
	movq	%rax, 24(%rsp)
	call	_ZNSt7__cxx119to_stringEi
	movq	24(%rsp), %rdi
	leaq	.LC85(%rip), %rdx
	xorl	%esi, %esi
.LEHB25:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6insertEmPKc@PLT
.LEHE25:
	leaq	112(%rsp), %r13
	movq	%rax, %rsi
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	leaq	.LC86(%rip), %rsi
	movq	%r13, %rdi
.LEHB26:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE26:
	leaq	144(%rsp), %r12
	movq	%rax, %rsi
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	movq	%r12, %rdi
	movq	184(%rsp), %r15
	addq	152(%rsp), %r15
	call	_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8capacityEv@PLT
	cmpq	%r15, %rax
	leaq	208(%rsp), %rax
	movq	%rax, (%rsp)
	jnb	.L1118
	movq	8(%rsp), %rdi
	call	_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8capacityEv@PLT
	cmpq	%r15, %rax
	jb	.L1118
	movq	8(%rsp), %rdi
	movq	%r12, %rdx
	xorl	%esi, %esi
.LEHB27:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6insertEmRKS4_@PLT
	jmp	.L1157
.L1118:
	movq	8(%rsp), %rsi
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendERKS4_@PLT
.LEHE27:
.L1157:
	movq	(%rsp), %rdi
	movq	%rax, %rsi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	movq	(%rsp), %rdi
	leaq	.LC87(%rip), %rsi
.LEHB28:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc@PLT
.LEHE28:
	movq	%rax, %rsi
	leaq	48(%rsp), %rax
	movq	%rax, %rdi
	movq	%rax, 16(%rsp)
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_@PLT
	movq	(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	24(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	8(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	16(%rsp), %rsi
	movq	(%rsp), %rdi
	movl	$8, %edx
.LEHB29:
	call	_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode@PLT
.LEHE29:
	movl	496(%rsp), %r12d
	testl	%r12d, %r12d
	je	.L1120
	leaq	.LC88(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
.LEHB30:
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	16(%rsp), %rsi
	movq	%rax, %rdi
	call	_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE@PLT
	movq	%rax, %rdi
	leaq	.LC89(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movl	$8, %edi
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rdi
	leaq	.LC90(%rip), %rax
	movq	%rax, (%rdi)
	movq	728(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1155
	xorl	%edx, %edx
	leaq	_ZTIPKc(%rip), %rsi
	call	__cxa_throw@PLT
.LEHE30:
.L1120:
	xorl	%eax, %eax
	movl	%ebp, %r15d
	movq	%rax, (%rbx)
	imull	%r14d, %r15d
	movq	%rax, 8(%rbx)
	movq	%rax, 16(%rbx)
	leaq	44(%rsp), %rax
	movq	%rax, 8(%rsp)
.L1122:
	movl	496(%rsp), %r13d
	cmpl	%r12d, %r15d
	jle	.L1127
	testl	%r13d, %r13d
	jne	.L1128
	movq	(%rsp), %rdi
.LEHB31:
	call	_ZNSi4peekEv@PLT
	subl	$48, %eax
	cmpl	$9, %eax
	ja	.L1123
	movq	8(%rsp), %rsi
	movq	(%rsp), %rdi
	call	_ZNSirsERi@PLT
	movq	8(%rbx), %rsi
	cmpq	16(%rbx), %rsi
	je	.L1124
	movl	44(%rsp), %eax
	addq	$4, %rsi
	movl	%eax, -4(%rsi)
	movq	%rsi, 8(%rbx)
	jmp	.L1126
.L1124:
	movq	8(%rsp), %rdx
	movq	%rbx, %rdi
	call	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	jmp	.L1126
.L1123:
	movq	(%rsp), %rdi
	call	_ZNSi3getEv@PLT
	decl	%r12d
.L1126:
	incl	%r12d
	jmp	.L1122
.L1127:
	testl	%r13d, %r13d
	je	.L1130
.L1128:
	leaq	.LC88(%rip), %rsi
	leaq	_ZSt4cout(%rip), %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	16(%rsp), %rsi
	movq	%rax, %rdi
	call	_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE@PLT
	movq	%rax, %rdi
	leaq	.LC89(%rip), %rsi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movl	$8, %edi
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rdi
	leaq	.LC90(%rip), %rax
	movq	%rax, (%rdi)
	movq	728(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1155
	xorl	%edx, %edx
	leaq	_ZTIPKc(%rip), %rsi
	call	__cxa_throw@PLT
.L1130:
	movabsq	$2305843009213693950, %rax
	leal	1(%rbp), %edi
	movslq	%edi, %rdi
	cmpq	%rdi, %rax
	jb	.L1132
	salq	$2, %rdi
	call	_Znam@PLT
	movq	%rax, 24(%rbx)
	xorl	%edx, %edx
	jmp	.L1135
.L1132:
	movq	728(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1155
	call	__cxa_throw_bad_array_new_length@PLT
.L1135:
	cmpl	%edx, %ebp
	jl	.L1160
	movl	%r13d, (%rax,%rdx,4)
	addl	%r14d, %r13d
	incq	%rdx
	jmp	.L1135
.L1160:
	movq	(%rsp), %rdi
	call	_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv@PLT
.LEHE31:
	movq	(%rsp), %rdi
	call	_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@PLT
	movq	16(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	728(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1146
	jmp	.L1155
.L1150:
	endbr64
	movq	%rax, %rbx
.L1137:
	movq	(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1138
.L1149:
	endbr64
	movq	%rax, %rbx
.L1138:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1139
.L1148:
	endbr64
	movq	%rax, %rbx
.L1139:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1140
.L1147:
	endbr64
	movq	%rax, %rbx
.L1140:
	movq	24(%rsp), %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	8(%rsp), %rdi
	jmp	.L1159
.L1153:
	endbr64
	movq	%rax, %rbp
.L1142:
	movq	%rbx, %rdi
	movq	%rbp, %rbx
	call	_ZNSt6vectorIiSaIiEED1Ev
	jmp	.L1143
.L1152:
	endbr64
	movq	%rax, %rbx
.L1143:
	movq	(%rsp), %rdi
	call	_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@PLT
	jmp	.L1144
.L1151:
	endbr64
	movq	%rax, %rbx
.L1144:
	movq	16(%rsp), %rdi
.L1159:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	728(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1155
	movq	%rbx, %rdi
.LEHB32:
	call	_Unwind_Resume@PLT
.LEHE32:
.L1155:
	call	__stack_chk_fail@PLT
.L1146:
	addq	$744, %rsp
	.cfi_def_cfa_offset 56
	movq	%rbx, %rax
	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
.LFE12226:
	.section	.gcc_except_table,"a",@progbits
.LLSDA12226:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12226-.LLSDACSB12226
.LLSDACSB12226:
	.uleb128 .LEHB25-.LFB12226
	.uleb128 .LEHE25-.LEHB25
	.uleb128 .L1147-.LFB12226
	.uleb128 0
	.uleb128 .LEHB26-.LFB12226
	.uleb128 .LEHE26-.LEHB26
	.uleb128 .L1148-.LFB12226
	.uleb128 0
	.uleb128 .LEHB27-.LFB12226
	.uleb128 .LEHE27-.LEHB27
	.uleb128 .L1149-.LFB12226
	.uleb128 0
	.uleb128 .LEHB28-.LFB12226
	.uleb128 .LEHE28-.LEHB28
	.uleb128 .L1150-.LFB12226
	.uleb128 0
	.uleb128 .LEHB29-.LFB12226
	.uleb128 .LEHE29-.LEHB29
	.uleb128 .L1151-.LFB12226
	.uleb128 0
	.uleb128 .LEHB30-.LFB12226
	.uleb128 .LEHE30-.LEHB30
	.uleb128 .L1152-.LFB12226
	.uleb128 0
	.uleb128 .LEHB31-.LFB12226
	.uleb128 .LEHE31-.LEHB31
	.uleb128 .L1153-.LFB12226
	.uleb128 0
	.uleb128 .LEHB32-.LFB12226
	.uleb128 .LEHE32-.LEHB32
	.uleb128 0
	.uleb128 0
.LLSDACSE12226:
	.text
	.size	_Z8readFileii, .-_Z8readFileii
	.section	.text._ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	.type	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv, @function
_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv:
.LFB13311:
	.cfi_startproc
	endbr64
	movq	(%rdi), %rax
	ret
	.cfi_endproc
.LFE13311:
	.size	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv, .-_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	.section	.text._ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	.type	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl, @function
_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl:
.LFB13131:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	movq	(%rdi), %rax
	movq	%rsp, %rdi
	leaq	(%rax,%rsi,4), %rax
	movq	%rax, (%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	movq	8(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1163
	call	__stack_chk_fail@PLT
.L1163:
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13131:
	.size	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl, .-_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm:
.LFB13144:
	.cfi_startproc
	endbr64
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	movq	8(%rdi), %rax
	movq	%rsp, %rdi
	leaq	(%rax,%rsi,4), %rax
	movq	%rax, (%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	movq	8(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1166
	call	__stack_chk_fail@PLT
.L1166:
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13144:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm
	.section	.rodata._ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv.str1.1,"aMS",@progbits,1
.LC91:
	.string	"trivial_device_copy D->H failed"
	.section	.text._ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv,"axG",@progbits,_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv,comdat
	.align 2
	.weak	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv
	.type	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv, @function
_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv:
.LFB13132:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	subq	$32, %rsp
	.cfi_def_cfa_offset 48
	movq	%fs:40, %rax
	movq	%rax, 24(%rsp)
	movq	(%rdi), %rax
	leaq	16(%rsp), %rdi
	movq	%rax, 16(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	movl	$1, %r8d
	movl	$2, %ecx
	movl	$4, %edx
	movq	%rax, %rsi
	leaq	12(%rsp), %rdi
	call	cudaMemcpyAsync@PLT
	movl	$1, %edi
	movl	%eax, %ebx
	call	cudaStreamSynchronize@PLT
	leaq	.LC91(%rip), %rsi
	movl	%ebx, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	12(%rsp), %eax
	movq	24(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1169
	call	__stack_chk_fail@PLT
.L1169:
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13132:
	.size	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv, .-_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_.str1.1,"aMS",@progbits,1
.LC92:
	.string	"__copy::trivial_device_copy H->D: failed"
	.section	.text._ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_
	.type	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_, @function
_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_:
.LFB13142:
	.cfi_startproc
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	subq	%rdi, %rsi
	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
	movq	%rdx, %rbx
	subq	$16, %rsp
	.cfi_def_cfa_offset 48
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	movq	%rdx, (%rsp)
	testq	%rsi, %rsi
	jle	.L1172
	movq	%rdi, %r12
	movq	%rsp, %rdi
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	movq	%r12, %rsi
	movl	$1, %ecx
	movq	%rbp, %rdx
	movq	%rax, %rdi
	movl	$1, %r8d
	call	cudaMemcpyAsync@PLT
	movl	$1, %edi
	movl	%eax, %r12d
	call	cudaStreamSynchronize@PLT
	leaq	.LC92(%rip), %rsi
	movl	%r12d, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.L1172:
	leaq	(%rbx,%rbp), %rax
	movq	8(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L1173
	call	__stack_chk_fail@PLT
.L1173:
	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
.LFE13142:
	.size	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_, .-_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_
	.section	.text._ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_
	.type	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_, @function
_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_:
.LFB13414:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	subq	$32, %rsp
	.cfi_def_cfa_offset 48
	movq	%rsi, 8(%rsp)
	movq	%fs:40, %rax
	movq	%rax, 24(%rsp)
	movq	(%rdi), %rax
	leaq	16(%rsp), %rdi
	movq	%rax, 16(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEdeEv
	movq	8(%rsp), %rsi
	movl	$1, %r8d
	movl	$1, %ecx
	movq	%rax, %rdi
	movl	$4, %edx
	call	cudaMemcpyAsync@PLT
	movl	$1, %edi
	movl	%eax, %ebx
	call	cudaStreamSynchronize@PLT
	movq	24(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1176
	call	__stack_chk_fail@PLT
.L1176:
	addq	$32, %rsp
	.cfi_def_cfa_offset 16
	movl	%ebx, %edi
	leaq	.LC92(%rip), %rsi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	.cfi_endproc
.LFE13414:
	.size	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_, .-_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv:
.LFB13484:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13484
	endbr64
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.L1185
	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
.L1185:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE13484:
	.section	.gcc_except_table
.LLSDA13484:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13484-.LLSDACSB13484
.LLSDACSB13484:
.LLSDACSE13484:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED5Ev,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev:
.LFB13318:
	.cfi_startproc
	endbr64
	jmp	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv
	.cfi_endproc
.LFE13318:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED1Ev
	.set	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED1Ev,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm.str1.1,"aMS",@progbits,1
.LC93:
	.string	"device free failed"
.LC94:
	.string	"temporary_buffer::allocate: get_temporary_buffer failed"
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC5ERNS0_16execution_policyIS4_EEm,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm
	.type	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm, @function
_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm:
.LFB13651:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13651
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	xorl	%ecx, %ecx
	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
	movq	%rdi, %rbx
	subq	$96, %rsp
	.cfi_def_cfa_offset 144
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	movq	%rsi, (%rdi)
	movq	%rcx, 8(%rdi)
	movq	%rcx, 16(%rdi)
	testq	%rdx, %rdx
	je	.L1190
	movq	%rdx, %rbp
	leaq	16(%rsp), %r14
	xorl	%edx, %edx
	movq	%rbp, %rsi
	movq	%r14, %rdi
	movq	%rdx, 16(%rsp)
.LEHB33:
	call	cudaMalloc@PLT
	movl	%eax, %r13d
	testl	%eax, %eax
	je	.L1191
	call	cudaGetLastError@PLT
.LEHE33:
	movl	$40, %edi
	leaq	56(%rsp), %r12
	call	__cxa_allocate_exception@PLT
	movq	%rax, %rbp
	call	_ZN6thrust20THRUST_200700_890_NS6system13cuda_categoryEv
	movl	%r13d, %edx
	movq	%r12, %rdi
	movq	%rax, %rsi
	movq	(%rax), %rax
.LEHB34:
	call	*48(%rax)
.LEHE34:
	leaq	24(%rsp), %r13
	movq	56(%rsp), %rsi
	leaq	15(%rsp), %rdx
	movq	%r13, %rdi
.LEHB35:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE35:
	movq	%r13, %rsi
	movq	%rbp, %rdi
.LEHB36:
	call	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.LEHE36:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1215
.L1191:
	movq	16(%rsp), %rdi
	xorl	%eax, %eax
	testq	%rdi, %rdi
	cmovne	%rbp, %rax
	cmpq	%rbp, %rax
	jnb	.L1199
	jmp	.L1218
.L1210:
	endbr64
	movq	%rax, %rbx
.L1195:
	movq	%r13, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1202
.L1209:
	endbr64
	jmp	.L1217
.L1208:
	endbr64
	jmp	.L1216
.L1218:
	call	cudaFree@PLT
	leaq	.LC93(%rip), %rsi
	leaq	56(%rsp), %r12
	movl	%eax, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	$40, %edi
	call	__cxa_allocate_exception@PLT
	movq	%r14, %rdx
	leaq	.LC94(%rip), %rsi
	movq	%r12, %rdi
	movq	%rax, %rbp
.LEHB37:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE37:
	movq	%r12, %rsi
	movq	%rbp, %rdi
.LEHB38:
	call	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.LEHE38:
.L1215:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1214
	leaq	_ZN6thrust20THRUST_200700_890_NS6system6detail9bad_allocD1Ev(%rip), %rdx
	leaq	_ZTIN6thrust20THRUST_200700_890_NS6system6detail9bad_allocE(%rip), %rsi
	movq	%rbp, %rdi
.LEHB39:
	call	__cxa_throw@PLT
.L1199:
	movq	%rdi, 8(%rbx)
	movq	%rbp, 16(%rbx)
	jmp	.L1189
.L1207:
	endbr64
.L1217:
	movq	%rax, %rbx
.L1202:
	movq	%r12, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L1203
.L1206:
	endbr64
.L1216:
	movq	%rax, %rbx
.L1203:
	movq	%rbp, %rdi
	call	__cxa_free_exception@PLT
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L1214
	movq	%rbx, %rdi
	call	_Unwind_Resume@PLT
.LEHE39:
.L1190:
	xorl	%eax, %eax
	movq	%rax, 8(%rdi)
.L1189:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L1205
.L1214:
	call	__stack_chk_fail@PLT
.L1205:
	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
.LFE13651:
	.section	.gcc_except_table
.LLSDA13651:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13651-.LLSDACSB13651
.LLSDACSB13651:
	.uleb128 .LEHB33-.LFB13651
	.uleb128 .LEHE33-.LEHB33
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB34-.LFB13651
	.uleb128 .LEHE34-.LEHB34
	.uleb128 .L1208-.LFB13651
	.uleb128 0
	.uleb128 .LEHB35-.LFB13651
	.uleb128 .LEHE35-.LEHB35
	.uleb128 .L1209-.LFB13651
	.uleb128 0
	.uleb128 .LEHB36-.LFB13651
	.uleb128 .LEHE36-.LEHB36
	.uleb128 .L1210-.LFB13651
	.uleb128 0
	.uleb128 .LEHB37-.LFB13651
	.uleb128 .LEHE37-.LEHB37
	.uleb128 .L1206-.LFB13651
	.uleb128 0
	.uleb128 .LEHB38-.LFB13651
	.uleb128 .LEHE38-.LEHB38
	.uleb128 .L1207-.LFB13651
	.uleb128 0
	.uleb128 .LEHB39-.LFB13651
	.uleb128 .LEHE39-.LEHB39
	.uleb128 0
	.uleb128 0
.LLSDACSE13651:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC5ERNS0_16execution_policyIS4_EEm,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm, .-_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC1ERNS0_16execution_policyIS4_EEm
	.set	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC1ERNS0_16execution_policyIS4_EEm,_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC2ERNS0_16execution_policyIS4_EEm
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv:
.LFB13656:
	.cfi_startproc
	endbr64
	movq	8(%rdi), %rax
	ret
	.cfi_endproc
.LFE13656:
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	.type	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv, @function
_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv:
.LFB13778:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13778
	endbr64
	cmpq	$0, 16(%rdi)
	je	.L1223
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	movq	%rdi, %rbx
	movq	8(%rdi), %rdi
	call	cudaFree@PLT
	leaq	.LC93(%rip), %rsi
	movl	%eax, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	xorl	%eax, %eax
	movq	%rax, 8(%rbx)
	movq	%rax, 16(%rbx)
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L1223:
	.cfi_restore 3
	ret
	.cfi_endproc
.LFE13778:
	.section	.gcc_except_table
.LLSDA13778:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13778-.LLSDACSB13778
.LLSDACSB13778:
.LLSDACSE13778:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv, .-_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	.section	.text._ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii,"axG",@progbits,_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii,comdat
	.weak	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	.hidden	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	.type	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii, @function
_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii:
.LFB13900:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	xorl	%r8d, %r8d
	movslq	%ecx, %rcx
	call	cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1229
	testl	%eax, %eax
	jne	.L1226
.L1229:
	movl	%ebx, %eax
.L1226:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13900:
	.size	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii, .-_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	.section	.text._ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii,"axG",@progbits,_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii,comdat
	.weak	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	.hidden	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	.type	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii, @function
_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii:
.LFB13906:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	xorl	%r8d, %r8d
	movslq	%ecx, %rcx
	call	cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1237
	testl	%eax, %eax
	jne	.L1234
.L1237:
	movl	%ebx, %eax
.L1234:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13906:
	.size	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii, .-_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0.str1.1,"aMS",@progbits,1
.LC95:
	.string	"after determining tmp storage requirements for inclusive_scan"
.LC96:
	.string	"after dispatching inclusive_scan kernel"
.LC97:
	.string	"inclusive_scan failed to synchronize"
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.type	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0, @function
_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0:
.LFB14140:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA14140
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	pushq	%r15
	pushq	%r14
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	movq	%rsi, %r14
	pushq	%r13
	.cfi_offset 13, -40
	movq	%rdi, %r13
	pushq	%r12
	.cfi_offset 12, -48
	xorl	%r12d, %r12d
	pushq	%rbx
	subq	$1128, %rsp
	.cfi_offset 3, -56
	movq	%rcx, -1152(%rbp)
	movq	%rdx, -1128(%rbp)
	movq	%fs:40, %rax
	movq	%rax, -56(%rbp)
	xorl	%eax, %eax
	testq	%rdx, %rdx
	movl	$4294967295, %eax
	movl	$0, -160(%rbp)
	cmovns	%rdx, %r12
	xorl	%ecx, %ecx
	cmpq	%rax, %rdx
	leaq	-160(%rbp), %rax
	movq	%rcx, -1112(%rbp)
	movq	%rax, -1136(%rbp)
	jg	.L1243
	movq	%rax, %rdi
.LEHB40:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1572
	testl	%eax, %eax
	jne	.L1266
.L1572:
	movl	%ebx, %eax
	testl	%ebx, %ebx
	jne	.L1266
	movl	-160(%rbp), %eax
	leaq	-120(%rbp), %rdi
	cmpl	$899, %eax
	jg	.L1246
	cmpl	$859, %eax
	jg	.L1246
	cmpl	$799, %eax
	jg	.L1246
	cmpl	$599, %eax
	jg	.L1246
	call	cudaGetDevice@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	movl	%eax, %r15d
	testl	%ebx, %ebx
	jne	.L1574
	testl	%eax, %eax
	jne	.L1253
.L1574:
	movl	%ebx, %r15d
	testl	%ebx, %ebx
	jne	.L1253
	call	cudaGetLastError@PLT
	movl	$1536, %ecx
	movl	%eax, %r15d
	testl	%eax, %eax
	je	.L1980
	jmp	.L1253
.L1246:
	call	cudaGetDevice@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	movl	%eax, %r15d
	testl	%ebx, %ebx
	jne	.L1578
	testl	%eax, %eax
	jne	.L1253
.L1578:
	movl	%ebx, %r15d
	testl	%ebx, %ebx
	jne	.L1253
	call	cudaGetLastError@PLT
	movl	%eax, %r15d
	testl	%eax, %eax
	jne	.L1253
	movl	$1920, %ecx
.L1980:
	xorl	%edx, %edx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-33, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	movq	%rax, -1112(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %r15d
.L1253:
	call	cudaGetLastError@PLT
	testl	%r15d, %r15d
	jne	.L1579
	testl	%eax, %eax
	jne	.L1266
.L1579:
	movl	%r15d, %eax
	jmp	.L1989
.L1243:
	movq	-1136(%rbp), %rdi
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1580
	testl	%eax, %eax
	jne	.L1266
.L1580:
	movl	%ebx, %eax
	testl	%ebx, %ebx
	jne	.L1266
	movl	-160(%rbp), %eax
	leaq	-120(%rbp), %rdi
	cmpl	$899, %eax
	jg	.L1269
	cmpl	$859, %eax
	jg	.L1269
	cmpl	$799, %eax
	jg	.L1269
	cmpl	$599, %eax
	jg	.L1269
	call	cudaGetDevice@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1582
	testl	%eax, %eax
	jne	.L1276
.L1582:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1276
	call	cudaGetLastError@PLT
	movl	$1536, %ecx
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L1984
	jmp	.L1276
.L1269:
	call	cudaGetDevice@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1586
	testl	%eax, %eax
	jne	.L1276
.L1586:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1276
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1276
	movl	$1920, %ecx
.L1984:
	xorl	%edx, %edx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbl	$-33, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	movq	%rax, -1112(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
.L1276:
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1587
	testl	%eax, %eax
	jne	.L1266
.L1587:
	movl	%ebx, %eax
.L1989:
	testl	%eax, %eax
	jne	.L1266
	xorl	%eax, %eax
.L1266:
	movl	%eax, %edi
	leaq	.LC95(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	leaq	-1104(%rbp), %rax
	movq	-1112(%rbp), %rdx
	movq	%r13, %rsi
	movq	%rax, %rdi
	movq	%rax, -1144(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC1ERNS0_16execution_policyIS4_EEm
.LEHE40:
	movq	-1144(%rbp), %rdi
	movl	$4294967295, %eax
	cmpq	%rax, -1128(%rbp)
	jg	.L1288
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	leaq	-640(%rbp), %rdi
	movq	%rax, %r13
	xorl	%eax, %eax
	movl	%eax, -640(%rbp)
.LEHB41:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1528
	testl	%eax, %eax
	jne	.L1378
	testl	%ebx, %ebx
	jne	.L1528
	movl	-640(%rbp), %eax
	movq	-1152(%rbp), %rsi
	leaq	-1112(%rbp), %rdx
	movq	%r13, -120(%rbp)
	movq	%rdx, -112(%rbp)
	movq	%r14, -104(%rbp)
	movq	%rsi, -96(%rbp)
	movl	%r12d, -84(%rbp)
	movq	$1, -80(%rbp)
	movl	%eax, -72(%rbp)
	cmpl	$899, %eax
	jg	.L1291
	cmpl	$859, %eax
	jg	.L1292
	cmpl	$799, %eax
	jg	.L1293
	cmpl	$599, %eax
	jg	.L1294
	cmpl	$519, %eax
	jg	.L1295
	leaq	-440(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1486
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1486
	xorl	%edx, %edx
	movl	$1536, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -400(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1298
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1299
.L1298:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1300
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1299
.L1300:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1299:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1590
	testl	%eax, %eax
	jne	.L1488
.L1590:
	testl	%ebx, %ebx
	jne	.L1398
	testq	%r13, %r13
	je	.L1398
	testl	%r12d, %r12d
	je	.L1398
	movq	%r14, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-400(%rbp), %rcx
	setne	%al
	leaq	-360(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movl	$1, -356(%rbp)
	movq	$1, -328(%rbp)
	sarl	$7, %edx
	addl	%edx, %eax
	movq	-1136(%rbp), %rdx
	movl	%eax, -360(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -352(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -344(%rbp)
	xorl	%eax, %eax
	movq	%rax, -336(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1591
	testl	%eax, %eax
	jne	.L1398
.L1591:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1592
	testl	%eax, %eax
	jne	.L1398
.L1592:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	movl	-440(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1491
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1491
	movl	-240(%rbp), %r14d
	cmpl	%r14d, -1128(%rbp)
	cmovle	-1128(%rbp), %r14d
	xorl	%r15d, %r15d
.L1305:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, -1128(%rbp)
	jle	.L2014
	movl	%r14d, -320(%rbp)
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	leaq	-104(%rbp), %rdx
	movq	%rax, -312(%rbp)
	leaq	-320(%rbp), %rdi
	movabsq	$4294967297, %rax
	leaq	-200(%rbp), %r9
	movq	%rax, -304(%rbp)
	xorl	%eax, %eax
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movq	%rax, -296(%rbp)
	movl	$1, -316(%rbp)
	movq	$1, -288(%rbp)
	pushq	%rax
	leaq	-84(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r13
	popq	%rax
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1492
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1492
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1305
.L2014:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1492:
	movl	%r13d, %ebx
	jmp	.L1398
.L1486:
	movl	%r14d, %ebx
	jmp	.L1398
.L1488:
	movl	%eax, %ebx
	jmp	.L1398
.L1491:
	movl	%r13d, %ebx
	jmp	.L1398
.L1295:
	leaq	-360(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1493
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1493
	xorl	%edx, %edx
	movl	$1536, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -320(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1312
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1313
.L1312:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1314
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1313
.L1314:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1313:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1596
	testl	%eax, %eax
	jne	.L1495
.L1596:
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r12d, %r12d
	je	.L1398
	testq	%r13, %r13
	je	.L1398
	movq	%r14, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-320(%rbp), %rcx
	setne	%al
	xorl	%ebx, %ebx
	leaq	-400(%rbp), %rdi
	movl	$1, -396(%rbp)
	sarl	$7, %edx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	%rbx, -376(%rbp)
	movq	$1, -368(%rbp)
	addl	%edx, %eax
	movq	-1136(%rbp), %rdx
	movl	%eax, -400(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -392(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -384(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1597
	testl	%eax, %eax
	jne	.L1398
.L1597:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1598
	testl	%eax, %eax
	jne	.L1398
.L1598:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1498
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1498
	movl	-240(%rbp), %r14d
	cmpl	%r14d, -1128(%rbp)
	cmovle	-1128(%rbp), %r14d
	xorl	%r15d, %r15d
.L1319:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, -1128(%rbp)
	jle	.L2015
	xorl	%r10d, %r10d
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -440(%rbp)
	movq	%rax, -432(%rbp)
	leaq	-104(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-440(%rbp), %rdi
	movq	%rax, -424(%rbp)
	leaq	-84(%rbp), %rax
	leaq	-200(%rbp), %r9
	movq	%r10, -416(%rbp)
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -436(%rbp)
	movq	$1, -408(%rbp)
	pushq	%r11
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r8
	popq	%r9
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1499
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1499
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1319
.L2015:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1499:
	movl	%r13d, %ebx
	jmp	.L1398
.L1493:
	movl	%r14d, %ebx
	jmp	.L1398
.L1495:
	movl	%eax, %ebx
	jmp	.L1398
.L1498:
	movl	%r13d, %ebx
	jmp	.L1398
.L1294:
	leaq	-400(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1500
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1500
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -360(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1325
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1326
.L1325:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1327
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1326
.L1327:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1326:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1602
	testl	%eax, %eax
	jne	.L1502
.L1602:
	testl	%ebx, %ebx
	jne	.L1398
	testq	%r13, %r13
	je	.L1398
	testl	%r12d, %r12d
	je	.L1398
	movq	%r14, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-280(%rbp), %r13
	setne	%al
	xorl	%edi, %edi
	leaq	-360(%rbp), %rcx
	movl	$1, -276(%rbp)
	sarl	$7, %edx
	movq	%rdi, -256(%rbp)
	movq	%r13, %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	$1, -248(%rbp)
	addl	%edx, %eax
	movq	-1136(%rbp), %rdx
	movl	%eax, -280(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -272(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -264(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1603
	testl	%eax, %eax
	jne	.L1398
.L1603:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-320(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1604
	testl	%eax, %eax
	jne	.L1398
.L1604:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-400(%rbp), %edx
	movl	$5, %esi
	movq	%r13, %rdi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1505
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1505
	movl	-280(%rbp), %r14d
	cmpl	%r14d, -1128(%rbp)
	cmovle	-1128(%rbp), %r14d
	xorl	%r15d, %r15d
.L1332:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, -1128(%rbp)
	jle	.L2016
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-104(%rbp), %rdx
	movl	%r14d, -240(%rbp)
	movq	%rax, -232(%rbp)
	movabsq	$4294967297, %rax
	leaq	-240(%rbp), %rdi
	leaq	-200(%rbp), %r9
	movq	%rax, -224(%rbp)
	leaq	-84(%rbp), %rax
	leaq	-160(%rbp), %r8
	movq	%rcx, -216(%rbp)
	leaq	-96(%rbp), %rcx
	movl	$1, -236(%rbp)
	movq	$1, -208(%rbp)
	pushq	%rsi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1506
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1506
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1332
.L2016:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1506:
	movl	%r13d, %ebx
	jmp	.L1398
.L1500:
	movl	%r14d, %ebx
	jmp	.L1398
.L1502:
	movl	%eax, %ebx
	jmp	.L1398
.L1505:
	movl	%r13d, %ebx
	jmp	.L1398
.L1293:
	leaq	-360(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1507
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1507
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -320(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1338
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1339
.L1338:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1340
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1339
.L1340:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1339:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1608
	testl	%eax, %eax
	jne	.L1509
.L1608:
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r12d, %r12d
	je	.L1398
	testq	%r13, %r13
	je	.L1398
	movq	%r14, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-320(%rbp), %rcx
	setne	%al
	leaq	-480(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movl	$1, -476(%rbp)
	movq	$1, -448(%rbp)
	sarl	$7, %edx
	addl	%edx, %eax
	movq	-1136(%rbp), %rdx
	movl	%eax, -480(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -472(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -464(%rbp)
	xorl	%eax, %eax
	movq	%rax, -456(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1609
	testl	%eax, %eax
	jne	.L1398
.L1609:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1610
	testl	%eax, %eax
	jne	.L1398
.L1610:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1512
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1512
	movl	-240(%rbp), %r14d
	cmpl	%r14d, -1128(%rbp)
	cmovle	-1128(%rbp), %r14d
	xorl	%r15d, %r15d
.L1345:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, -1128(%rbp)
	jle	.L2017
	movl	%r14d, -520(%rbp)
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	leaq	-104(%rbp), %rdx
	movq	%rax, -512(%rbp)
	leaq	-520(%rbp), %rdi
	movabsq	$4294967297, %rax
	leaq	-200(%rbp), %r9
	movq	%rax, -504(%rbp)
	xorl	%eax, %eax
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movq	%rax, -496(%rbp)
	movl	$1, -516(%rbp)
	movq	$1, -488(%rbp)
	pushq	%rax
	leaq	-84(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r13
	popq	%rax
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1513
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1513
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1345
.L2017:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1513:
	movl	%r13d, %ebx
	jmp	.L1398
.L1507:
	movl	%r14d, %ebx
	jmp	.L1398
.L1509:
	movl	%eax, %ebx
	jmp	.L1398
.L1512:
	movl	%r13d, %ebx
	jmp	.L1398
.L1292:
	leaq	-400(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1514
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1514
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -360(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1351
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1352
.L1351:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1353
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1352
.L1353:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1352:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1614
	testl	%eax, %eax
	jne	.L1516
.L1614:
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r12d, %r12d
	je	.L1398
	testq	%r13, %r13
	je	.L1398
	movq	%r14, -240(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-360(%rbp), %rcx
	setne	%al
	xorl	%ebx, %ebx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movl	$1, -196(%rbp)
	sarl	$7, %edx
	movq	%rbx, -176(%rbp)
	movq	$1, -168(%rbp)
	addl	%edx, %eax
	movl	%eax, -200(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -192(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -184(%rbp)
	leaq	-240(%rbp), %rax
	movq	%rax, -1136(%rbp)
	leaq	-200(%rbp), %rax
	movq	-1136(%rbp), %rdx
	movq	%rax, %rdi
	movq	%rax, -1160(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1615
	testl	%eax, %eax
	jne	.L1398
.L1615:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-320(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1616
	testl	%eax, %eax
	jne	.L1398
.L1616:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	movl	-400(%rbp), %edx
	leaq	-280(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1519
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1519
	movl	-280(%rbp), %eax
	cmpl	%eax, -1128(%rbp)
	cmovle	-1128(%rbp), %eax
	xorl	%r14d, %r14d
	movl	%eax, %r15d
.L1358:
	movl	%r14d, -200(%rbp)
	cmpl	%r14d, -1128(%rbp)
	jle	.L2018
	xorl	%r10d, %r10d
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r15d, -160(%rbp)
	movq	%rax, -152(%rbp)
	leaq	-104(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-160(%rbp), %rdi
	movq	%rax, -144(%rbp)
	leaq	-84(%rbp), %rax
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -156(%rbp)
	movq	%r10, -136(%rbp)
	movq	$1, -128(%rbp)
	pushq	%r11
	movq	-1160(%rbp), %r9
	pushq	%rax
	movq	-1136(%rbp), %r8
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r8
	popq	%r9
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1520
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1520
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r15d, %r14d
	jmp	.L1358
.L2018:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1520:
	movl	%r13d, %ebx
	jmp	.L1398
.L1514:
	movl	%r14d, %ebx
	jmp	.L1398
.L1516:
	movl	%eax, %ebx
	jmp	.L1398
.L1519:
	movl	%r13d, %ebx
	jmp	.L1398
.L1291:
	leaq	-360(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1521
	testl	%eax, %eax
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1521
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1128(%rbp)
	movl	%eax, -320(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L1364
	movq	%rax, -1112(%rbp)
	xorl	%r14d, %r14d
	jmp	.L1365
.L1364:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1366
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L1365
.L1366:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L1365:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1620
	testl	%eax, %eax
	jne	.L1523
.L1620:
	testl	%ebx, %ebx
	jne	.L1398
	testq	%r13, %r13
	je	.L1398
	testl	%r12d, %r12d
	je	.L1398
	movq	%r14, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	movl	-1128(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1128(%rbp)
	leaq	-320(%rbp), %rcx
	setne	%al
	xorl	%edi, %edi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movl	$1, -556(%rbp)
	sarl	$7, %edx
	movq	%rdi, -536(%rbp)
	leaq	-560(%rbp), %rdi
	movq	$1, -528(%rbp)
	addl	%edx, %eax
	movq	-1136(%rbp), %rdx
	movl	%eax, -560(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -552(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -544(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1621
	testl	%eax, %eax
	jne	.L1398
.L1621:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1622
	testl	%eax, %eax
	jne	.L1398
.L1622:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1526
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1526
	movl	-240(%rbp), %r14d
	cmpl	%r14d, -1128(%rbp)
	cmovle	-1128(%rbp), %r14d
	xorl	%r15d, %r15d
.L1371:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, -1128(%rbp)
	jle	.L2019
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-104(%rbp), %rdx
	movl	%r14d, -600(%rbp)
	movq	%rax, -592(%rbp)
	movabsq	$4294967297, %rax
	leaq	-600(%rbp), %rdi
	leaq	-200(%rbp), %r9
	movq	%rax, -584(%rbp)
	leaq	-84(%rbp), %rax
	leaq	-160(%rbp), %r8
	movq	%rcx, -576(%rbp)
	leaq	-96(%rbp), %rcx
	movl	$1, -596(%rbp)
	movq	$1, -568(%rbp)
	pushq	%rsi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEjEJS6_S6_SA_iSC_SD_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1527
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1527
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1371
.L2019:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1527:
	movl	%r13d, %ebx
	jmp	.L1398
.L1521:
	movl	%r14d, %ebx
	jmp	.L1398
.L1523:
	movl	%eax, %ebx
	jmp	.L1398
.L1526:
	movl	%r13d, %ebx
	jmp	.L1398
.L1288:
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	xorl	%r13d, %r13d
	leaq	-400(%rbp), %rdi
	movq	%rax, -1128(%rbp)
	movl	%r13d, -400(%rbp)
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1528
	testl	%eax, %eax
	jne	.L1378
	testl	%ebx, %ebx
	jne	.L1528
	movq	-1128(%rbp), %rsi
	movl	-400(%rbp), %eax
	leaq	-1112(%rbp), %rdx
	movq	%r14, -104(%rbp)
	movq	%rdx, -112(%rbp)
	leaq	-360(%rbp), %rdi
	movq	%rsi, -120(%rbp)
	movq	-1152(%rbp), %rsi
	cmpl	$899, %eax
	movq	%r12, -80(%rbp)
	movq	%rsi, -96(%rbp)
	movq	$1, -72(%rbp)
	movl	%eax, -64(%rbp)
	jg	.L1380
	cmpl	$859, %eax
	jg	.L1381
	cmpl	$799, %eax
	jg	.L1382
	cmpl	$599, %eax
	jg	.L1383
	cmpl	$519, %eax
	jg	.L1384
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1529
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1529
	xorl	%edx, %edx
	movl	$1536, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1387
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1388
.L1387:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1389
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1388
.L1389:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1388:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1628
	testl	%eax, %eax
	jne	.L1531
.L1628:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	xorl	%ebx, %ebx
	movl	$1, -836(%rbp)
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rbx, -816(%rbp)
	movq	$1, -808(%rbp)
	leaq	-840(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -840(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -832(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -824(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1629
	testl	%ebx, %ebx
	jne	.L1398
.L1629:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1630
	testl	%ebx, %ebx
	jne	.L1398
.L1630:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1534
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r15d, %r15d
	jne	.L1534
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1394:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2020
	xorl	%r10d, %r10d
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -800(%rbp)
	movq	%rax, -792(%rbp)
	leaq	-104(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-800(%rbp), %rdi
	movq	%rax, -784(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-200(%rbp), %r9
	movq	%r10, -776(%rbp)
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -796(%rbp)
	movq	$1, -768(%rbp)
	pushq	%r11
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r8
	popq	%r9
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1535
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1535
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1394
.L2020:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1535:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1529:
	movl	%r13d, %ebx
	jmp	.L1398
.L1531:
	movl	%eax, %ebx
	jmp	.L1398
.L1534:
	movl	%r15d, %ebx
	jmp	.L1398
.L1384:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1536
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1536
	xorl	%edx, %edx
	movl	$1536, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1401
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1402
.L1401:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1403
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1402
.L1403:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1402:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1634
	testl	%eax, %eax
	jne	.L1538
.L1634:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	movl	$1, -876(%rbp)
	setne	%cl
	cltd
	xorl	%edi, %edi
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rdi, -856(%rbp)
	movq	$1, -848(%rbp)
	leaq	-880(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -880(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -872(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -864(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1635
	testl	%ebx, %ebx
	jne	.L1398
.L1635:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1636
	testl	%ebx, %ebx
	jne	.L1398
.L1636:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1541
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r15d, %r15d
	jne	.L1541
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1408:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2021
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-104(%rbp), %rdx
	movl	%r14d, -920(%rbp)
	movq	%rax, -912(%rbp)
	movabsq	$4294967297, %rax
	leaq	-920(%rbp), %rdi
	leaq	-200(%rbp), %r9
	movq	%rax, -904(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-160(%rbp), %r8
	movq	%rcx, -896(%rbp)
	leaq	-96(%rbp), %rcx
	movl	$1, -916(%rbp)
	movq	$1, -888(%rbp)
	pushq	%rsi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1542
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1542
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1408
.L2021:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1542:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1536:
	movl	%r13d, %ebx
	jmp	.L1398
.L1538:
	movl	%eax, %ebx
	jmp	.L1398
.L1541:
	movl	%r15d, %ebx
	jmp	.L1398
.L1383:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1543
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1543
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1414
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1415
.L1414:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1416
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1415
.L1416:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1415:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1640
	testl	%eax, %eax
	jne	.L1545
.L1640:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	xorl	%ebx, %ebx
	movl	$1, -756(%rbp)
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rbx, -736(%rbp)
	movq	$1, -728(%rbp)
	leaq	-760(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -760(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -752(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -744(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1641
	testl	%ebx, %ebx
	jne	.L1398
.L1641:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1642
	testl	%ebx, %ebx
	jne	.L1398
.L1642:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1548
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r15d, %r15d
	jne	.L1548
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1421:
	movl	%r15d, -200(%rbp)
	cmpl	%r13d, %r15d
	jge	.L2022
	xorl	%r10d, %r10d
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -720(%rbp)
	movq	%rax, -712(%rbp)
	leaq	-104(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-720(%rbp), %rdi
	movq	%rax, -704(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-200(%rbp), %r9
	movq	%r10, -696(%rbp)
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -716(%rbp)
	movq	$1, -688(%rbp)
	pushq	%r11
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r8
	popq	%r9
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1549
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1549
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1421
.L2022:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1549:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1543:
	movl	%r13d, %ebx
	jmp	.L1398
.L1545:
	movl	%eax, %ebx
	jmp	.L1398
.L1548:
	movl	%r15d, %ebx
	jmp	.L1398
.L1382:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1550
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1550
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1427
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1428
.L1427:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1429
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1428
.L1429:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1428:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1646
	testl	%eax, %eax
	jne	.L1552
.L1646:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	movl	$1, -956(%rbp)
	setne	%cl
	cltd
	xorl	%edi, %edi
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rdi, -936(%rbp)
	movq	$1, -928(%rbp)
	leaq	-960(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -960(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -952(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -944(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1647
	testl	%ebx, %ebx
	jne	.L1398
.L1647:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1648
	testl	%ebx, %ebx
	jne	.L1398
.L1648:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1555
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r15d, %r15d
	jne	.L1555
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1434:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2023
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-104(%rbp), %rdx
	movl	%r14d, -1000(%rbp)
	movq	%rax, -992(%rbp)
	movabsq	$4294967297, %rax
	leaq	-1000(%rbp), %rdi
	leaq	-200(%rbp), %r9
	movq	%rax, -984(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-160(%rbp), %r8
	movq	%rcx, -976(%rbp)
	leaq	-96(%rbp), %rcx
	movl	$1, -996(%rbp)
	movq	$1, -968(%rbp)
	pushq	%rsi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1556
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1556
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1434
.L2023:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1556:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1550:
	movl	%r13d, %ebx
	jmp	.L1398
.L1552:
	movl	%eax, %ebx
	jmp	.L1398
.L1555:
	movl	%r15d, %ebx
	jmp	.L1398
.L1381:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1557
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1557
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1440
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1441
.L1440:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1442
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1441
.L1442:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1441:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1652
	testl	%eax, %eax
	jne	.L1559
.L1652:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	xorl	%ebx, %ebx
	movl	$1, -676(%rbp)
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rbx, -656(%rbp)
	movq	$1, -648(%rbp)
	leaq	-680(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -680(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -672(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -664(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1653
	testl	%ebx, %ebx
	jne	.L1398
.L1653:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1654
	testl	%ebx, %ebx
	jne	.L1398
.L1654:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1562
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r15d, %r15d
	jne	.L1562
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1447:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2024
	xorl	%r10d, %r10d
	leaq	-96(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -640(%rbp)
	movq	%rax, -632(%rbp)
	leaq	-104(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-640(%rbp), %rdi
	movq	%rax, -624(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-200(%rbp), %r9
	movq	%r10, -616(%rbp)
	leaq	-160(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -636(%rbp)
	movq	$1, -608(%rbp)
	pushq	%r11
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r8
	popq	%r9
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1563
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1563
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1447
.L2024:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1563:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1557:
	movl	%r13d, %ebx
	jmp	.L1398
.L1559:
	movl	%eax, %ebx
	jmp	.L1398
.L1562:
	movl	%r15d, %ebx
	jmp	.L1398
.L1380:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L1564
	testl	%eax, %eax
	jne	.L1398
	testl	%r13d, %r13d
	jne	.L1564
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -320(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1128(%rbp)
	jne	.L1453
	movq	%rax, -1112(%rbp)
	xorl	%r15d, %r15d
	jmp	.L1454
.L1453:
	cmpq	%rax, -1112(%rbp)
	jnb	.L1455
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L1454
.L1455:
	movq	-1128(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L1454:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L1658
	testl	%eax, %eax
	jne	.L1566
.L1658:
	testl	%ebx, %ebx
	jne	.L1398
	cmpq	$0, -1128(%rbp)
	je	.L1398
	movq	%r15, -160(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	movl	$1, -1036(%rbp)
	setne	%cl
	cltd
	xorl	%edi, %edi
	idivl	%esi
	movq	-1136(%rbp), %rdx
	movq	%rdi, -1016(%rbp)
	movq	$1, -1008(%rbp)
	leaq	-1040(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -1040(%rbp)
	leaq	-320(%rbp), %rcx
	movq	%rax, -1032(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -1024(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L1659
	testl	%ebx, %ebx
	jne	.L1398
.L1659:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L1398
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	leaq	-280(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_8NullTypeEmEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1660
	testl	%ebx, %ebx
	jne	.L1398
.L1660:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L1398
	movl	-360(%rbp), %edx
	leaq	-240(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L1569
	testl	%ebx, %ebx
	jne	.L1398
	testl	%r14d, %r14d
	jne	.L1569
	movl	-240(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L1460:
	movl	%r15d, -200(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2025
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-104(%rbp), %rdx
	movl	%r14d, -1080(%rbp)
	movq	%rax, -1072(%rbp)
	movabsq	$4294967297, %rax
	leaq	-1080(%rbp), %rdi
	leaq	-200(%rbp), %r9
	movq	%rax, -1064(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-160(%rbp), %r8
	movq	%rcx, -1056(%rbp)
	leaq	-96(%rbp), %rcx
	movl	$1, -1076(%rbp)
	movq	$1, -1048(%rbp)
	pushq	%rsi
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_8NullTypeEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_8NullTypeEmEJS6_S6_SA_iSC_SD_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1128(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1128(%rbp)
	movl	%eax, %ebx
	jne	.L1570
	testl	%eax, %eax
	jne	.L1398
	cmpl	$0, -1128(%rbp)
	jne	.L1570
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L1398
	addl	%r14d, %r15d
	jmp	.L1460
.L2025:
	xorl	%ebx, %ebx
	jmp	.L1398
.L1570:
	movl	-1128(%rbp), %ebx
	jmp	.L1398
.L1564:
	movl	%r13d, %ebx
	jmp	.L1398
.L1566:
	movl	%eax, %ebx
	jmp	.L1398
.L1569:
	movl	%r14d, %ebx
.L1398:
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L1528
	testl	%eax, %eax
	jne	.L1378
	testl	%ebx, %ebx
	je	.L1377
.L1528:
	movl	%ebx, %eax
.L1378:
	movl	%eax, %ebx
.L1377:
	leaq	.LC96(%rip), %rsi
	movl	%ebx, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	leaq	.LC97(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE41:
	movq	-1144(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	movq	-1152(%rbp), %rax
	leaq	(%rax,%r12,4), %rax
	movq	-56(%rbp), %rdx
	subq	%fs:40, %rdx
	je	.L1468
	jmp	.L1978
.L1571:
	endbr64
	movq	%rax, %rbx
.L1466:
	movq	-1144(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	movq	-56(%rbp), %rax
	subq	%fs:40, %rax
	jne	.L1978
	movq	%rbx, %rdi
.LEHB42:
	call	_Unwind_Resume@PLT
.LEHE42:
.L1978:
	call	__stack_chk_fail@PLT
.L1468:
	leaq	-40(%rbp), %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14140:
	.section	.gcc_except_table
.LLSDA14140:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE14140-.LLSDACSB14140
.LLSDACSB14140:
	.uleb128 .LEHB40-.LFB14140
	.uleb128 .LEHE40-.LEHB40
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB41-.LFB14140
	.uleb128 .LEHE41-.LEHB41
	.uleb128 .L1571-.LFB14140
	.uleb128 0
	.uleb128 .LEHB42-.LFB14140
	.uleb128 .LEHE42-.LEHB42
	.uleb128 0
	.uleb128 0
.LLSDACSE14140:
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0, .-_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0
	.section	.text._ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	.type	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_, @function
_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_:
.LFB13143:
	.cfi_startproc
	endbr64
	movq	%rdx, %rcx
	movq	%rdi, %rdx
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	subq	%rsi, %rdx
	leaq	7(%rsp), %rax
	movq	%rdi, %rsi
	sarq	$2, %rdx
	movq	%rax, %rdi
	negq	%rdx
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21inclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_NS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_.isra.0
	movq	8(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L2027
	call	__stack_chk_fail@PLT
.L2027:
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13143:
	.size	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_, .-_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	.section	.text._ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii,"axG",@progbits,_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii,comdat
	.weak	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	.hidden	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	.type	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii, @function
_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii:
.LFB13921:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	xorl	%r8d, %r8d
	movslq	%ecx, %rcx
	call	cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2032
	testl	%eax, %eax
	jne	.L2029
.L2032:
	movl	%ebx, %eax
.L2029:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13921:
	.size	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii, .-_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	.section	.text._ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii,"axG",@progbits,_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii,comdat
	.weak	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	.hidden	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	.type	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii, @function
_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii:
.LFB13926:
	.cfi_startproc
	endbr64
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	xorl	%r8d, %r8d
	movslq	%ecx, %rcx
	call	cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2040
	testl	%eax, %eax
	jne	.L2037
.L2040:
	movl	%ebx, %eax
.L2037:
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13926:
	.size	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii, .-_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	.section	.rodata._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0.str1.1,"aMS",@progbits,1
.LC98:
	.string	"after determining tmp storage requirements for exclusive_scan"
.LC99:
	.string	"after dispatching exclusive_scan kernel"
.LC100:
	.string	"exclusive_scan failed to synchronize"
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.type	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0, @function
_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0:
.LFB14146:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA14146
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	pushq	%r15
	.cfi_offset 15, -24
	movq	%rsi, %r15
	pushq	%r14
	.cfi_offset 14, -32
	movl	%r8d, %r14d
	pushq	%r13
	pushq	%r12
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	xorl	%r12d, %r12d
	pushq	%rbx
	subq	$1144, %rsp
	.cfi_offset 3, -56
	movq	%rdi, -1176(%rbp)
	movq	%rdx, -1144(%rbp)
	movq	%rcx, -1168(%rbp)
	movq	%fs:40, %rax
	movq	%rax, -56(%rbp)
	xorl	%eax, %eax
	testq	%rdx, %rdx
	movl	$0, -176(%rbp)
	cmovns	%rdx, %r12
	xorl	%eax, %eax
	movq	%rax, -1128(%rbp)
	movl	$4294967295, %eax
	cmpq	%rax, %rdx
	leaq	-176(%rbp), %rax
	movq	%rax, -1152(%rbp)
	jg	.L2046
	movq	%rax, %rdi
.LEHB43:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2375
	testl	%eax, %eax
	jne	.L2069
.L2375:
	movl	%ebx, %eax
	testl	%ebx, %ebx
	jne	.L2069
	movl	-176(%rbp), %eax
	leaq	-136(%rbp), %rdi
	cmpl	$899, %eax
	jg	.L2049
	cmpl	$859, %eax
	jg	.L2049
	cmpl	$799, %eax
	jg	.L2049
	cmpl	$599, %eax
	jg	.L2049
	call	cudaGetDevice@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
	testl	%ebx, %ebx
	jne	.L2377
	testl	%eax, %eax
	jne	.L2056
.L2377:
	movl	%ebx, %r13d
	testl	%ebx, %ebx
	jne	.L2056
	call	cudaGetLastError@PLT
	movl	$1536, %ecx
	movl	%eax, %r13d
	testl	%eax, %eax
	je	.L2783
	jmp	.L2056
.L2049:
	call	cudaGetDevice@PLT
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
	testl	%ebx, %ebx
	jne	.L2381
	testl	%eax, %eax
	jne	.L2056
.L2381:
	movl	%ebx, %r13d
	testl	%ebx, %ebx
	jne	.L2056
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
	testl	%eax, %eax
	jne	.L2056
	movl	$1920, %ecx
.L2783:
	xorl	%edx, %edx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-33, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	movq	%rax, -1128(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
.L2056:
	call	cudaGetLastError@PLT
	testl	%r13d, %r13d
	jne	.L2382
	testl	%eax, %eax
	jne	.L2069
.L2382:
	movl	%r13d, %eax
	jmp	.L2792
.L2046:
	movq	-1152(%rbp), %rdi
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2383
	testl	%eax, %eax
	jne	.L2069
.L2383:
	movl	%ebx, %eax
	testl	%ebx, %ebx
	jne	.L2069
	movl	-176(%rbp), %eax
	leaq	-136(%rbp), %rdi
	cmpl	$899, %eax
	jg	.L2072
	cmpl	$859, %eax
	jg	.L2072
	cmpl	$799, %eax
	jg	.L2072
	cmpl	$599, %eax
	jg	.L2072
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2385
	testl	%eax, %eax
	jne	.L2079
.L2385:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2079
	call	cudaGetLastError@PLT
	movl	$1536, %ecx
	movl	%eax, %ebx
	testl	%eax, %eax
	je	.L2787
	jmp	.L2079
.L2072:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2389
	testl	%eax, %eax
	jne	.L2079
.L2389:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2079
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2079
	movl	$1920, %ecx
.L2787:
	xorl	%edx, %edx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbl	$-33, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	movq	%rax, -1128(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
.L2079:
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2390
	testl	%eax, %eax
	jne	.L2069
.L2390:
	movl	%ebx, %eax
.L2792:
	testl	%eax, %eax
	jne	.L2069
	xorl	%eax, %eax
.L2069:
	movl	%eax, %edi
	leaq	.LC98(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	leaq	-1120(%rbp), %rax
	movq	-1128(%rbp), %rdx
	movq	-1176(%rbp), %rsi
	movq	%rax, %rdi
	movq	%rax, -1160(%rbp)
	call	_ZN6thrust20THRUST_200700_890_NS6detail15temporary_arrayIhNS0_8cuda_cub3tagEEC1ERNS0_16execution_policyIS4_EEm
.LEHE43:
	movq	-1160(%rbp), %rdi
	movl	$4294967295, %eax
	cmpq	%rax, -1144(%rbp)
	jg	.L2091
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	leaq	-656(%rbp), %rdi
	movq	%rax, %r13
	xorl	%eax, %eax
	movl	%eax, -656(%rbp)
.LEHB44:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2331
	testl	%eax, %eax
	jne	.L2181
	testl	%ebx, %ebx
	jne	.L2331
	movl	-656(%rbp), %eax
	movq	-1168(%rbp), %rsi
	leaq	-1128(%rbp), %rdx
	movl	%r12d, -1144(%rbp)
	movq	%r13, -136(%rbp)
	movq	%rdx, -128(%rbp)
	movq	%r15, -120(%rbp)
	movq	%rsi, -112(%rbp)
	movb	$0, -96(%rbp)
	movl	%r14d, -88(%rbp)
	movl	%r12d, -80(%rbp)
	movq	$1, -72(%rbp)
	movl	%eax, -64(%rbp)
	cmpl	$899, %eax
	jg	.L2094
	cmpl	$859, %eax
	jg	.L2095
	cmpl	$799, %eax
	jg	.L2096
	cmpl	$599, %eax
	jg	.L2097
	cmpl	$519, %eax
	jg	.L2098
	leaq	-456(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2289
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2289
	xorl	%edx, %edx
	movl	$1536, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -416(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2101
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2102
.L2101:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2103
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2102
.L2103:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2102:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2393
	testl	%eax, %eax
	jne	.L2291
.L2393:
	testl	%ebx, %ebx
	jne	.L2201
	testq	%r13, %r13
	je	.L2201
	testl	%r12d, %r12d
	je	.L2201
	movq	%r14, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-416(%rbp), %rcx
	setne	%al
	xorl	%r14d, %r14d
	leaq	-376(%rbp), %rdi
	movl	$1, -372(%rbp)
	sarl	$7, %edx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	%r14, -352(%rbp)
	movq	$1, -344(%rbp)
	addl	%edx, %eax
	movq	-1152(%rbp), %rdx
	movl	%eax, -376(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -368(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -360(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2394
	testl	%eax, %eax
	jne	.L2201
.L2394:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2395
	testl	%eax, %eax
	jne	.L2201
.L2395:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	movl	-456(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2294
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2294
	movl	-256(%rbp), %r14d
	cmpl	%r14d, -1144(%rbp)
	cmovle	-1144(%rbp), %r14d
	xorl	%r15d, %r15d
.L2108:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, -1144(%rbp)
	jle	.L2817
	xorl	%r13d, %r13d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -336(%rbp)
	movq	%rax, -328(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-336(%rbp), %rdi
	movq	%rax, -320(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-216(%rbp), %r9
	movq	%r13, -312(%rbp)
	leaq	-176(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -332(%rbp)
	movq	$1, -304(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r11
	popq	%rbx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2295
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2295
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2108
.L2817:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2295:
	movl	%r13d, %ebx
	jmp	.L2201
.L2289:
	movl	%r14d, %ebx
	jmp	.L2201
.L2291:
	movl	%eax, %ebx
	jmp	.L2201
.L2294:
	movl	%r13d, %ebx
	jmp	.L2201
.L2098:
	leaq	-376(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2296
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2296
	xorl	%edx, %edx
	movl	$1536, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -336(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2115
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2116
.L2115:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2117
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2116
.L2117:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2116:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2399
	testl	%eax, %eax
	jne	.L2298
.L2399:
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r12d, %r12d
	je	.L2201
	testq	%r13, %r13
	je	.L2201
	movq	%r14, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-336(%rbp), %rcx
	setne	%al
	xorl	%r10d, %r10d
	leaq	-416(%rbp), %rdi
	movl	$1, -412(%rbp)
	sarl	$7, %edx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	%r10, -392(%rbp)
	movq	$1, -384(%rbp)
	addl	%edx, %eax
	movq	-1152(%rbp), %rdx
	movl	%eax, -416(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -408(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -400(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2400
	testl	%eax, %eax
	jne	.L2201
.L2400:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2401
	testl	%eax, %eax
	jne	.L2201
.L2401:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2301
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2301
	movl	-256(%rbp), %r14d
	cmpl	%r14d, -1144(%rbp)
	cmovle	-1144(%rbp), %r14d
	xorl	%r15d, %r15d
.L2122:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, -1144(%rbp)
	jle	.L2818
	xorl	%r9d, %r9d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -456(%rbp)
	movq	%rax, -448(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-456(%rbp), %rdi
	movq	%rax, -440(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%r9, -432(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-216(%rbp), %r9
	movl	$1, -452(%rbp)
	movq	$1, -424(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rdi
	popq	%r8
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2302
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2302
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2122
.L2818:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2302:
	movl	%r13d, %ebx
	jmp	.L2201
.L2296:
	movl	%r14d, %ebx
	jmp	.L2201
.L2298:
	movl	%eax, %ebx
	jmp	.L2201
.L2301:
	movl	%r13d, %ebx
	jmp	.L2201
.L2097:
	leaq	-416(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2303
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2303
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -376(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2128
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2129
.L2128:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2130
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2129
.L2130:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2129:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2405
	testl	%eax, %eax
	jne	.L2305
.L2405:
	testl	%ebx, %ebx
	jne	.L2201
	testq	%r13, %r13
	je	.L2201
	testl	%r12d, %r12d
	je	.L2201
	movq	%r14, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-296(%rbp), %r13
	setne	%al
	xorl	%esi, %esi
	movq	%r13, %rdi
	movl	$1, -292(%rbp)
	sarl	$7, %edx
	movq	%rsi, -272(%rbp)
	leaq	-376(%rbp), %rcx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	$1, -264(%rbp)
	addl	%edx, %eax
	movq	-1152(%rbp), %rdx
	movl	%eax, -296(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -288(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -280(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2406
	testl	%eax, %eax
	jne	.L2201
.L2406:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-336(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2407
	testl	%eax, %eax
	jne	.L2201
.L2407:
	movl	%r14d, %ebx
	testl	%r14d, %r14d
	jne	.L2201
	movl	-416(%rbp), %edx
	movl	$5, %esi
	movq	%r13, %rdi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2308
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2308
	movl	-296(%rbp), %r14d
	cmpl	%r14d, -1144(%rbp)
	cmovle	-1144(%rbp), %r14d
	xorl	%r15d, %r15d
.L2135:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, -1144(%rbp)
	jle	.L2819
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-120(%rbp), %rdx
	movl	%r14d, -256(%rbp)
	movq	%rax, -248(%rbp)
	movabsq	$4294967297, %rax
	leaq	-256(%rbp), %rdi
	leaq	-216(%rbp), %r9
	movq	%rax, -240(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%rcx, -232(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-112(%rbp), %rcx
	movl	$1, -252(%rbp)
	movq	$1, -224(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2309
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2309
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2135
.L2819:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2309:
	movl	%r13d, %ebx
	jmp	.L2201
.L2303:
	movl	%r14d, %ebx
	jmp	.L2201
.L2305:
	movl	%eax, %ebx
	jmp	.L2201
.L2308:
	movl	%r13d, %ebx
	jmp	.L2201
.L2096:
	leaq	-376(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2310
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2310
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -336(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2141
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2142
.L2141:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2143
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2142
.L2143:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2142:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2411
	testl	%eax, %eax
	jne	.L2312
.L2411:
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r12d, %r12d
	je	.L2201
	testq	%r13, %r13
	je	.L2201
	movq	%r14, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-336(%rbp), %rcx
	setne	%al
	xorl	%r14d, %r14d
	leaq	-496(%rbp), %rdi
	movl	$1, -492(%rbp)
	sarl	$7, %edx
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	%r14, -472(%rbp)
	movq	$1, -464(%rbp)
	addl	%edx, %eax
	movq	-1152(%rbp), %rdx
	movl	%eax, -496(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -488(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -480(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2412
	testl	%eax, %eax
	jne	.L2201
.L2412:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2413
	testl	%eax, %eax
	jne	.L2201
.L2413:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2315
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2315
	movl	-256(%rbp), %r14d
	cmpl	%r14d, -1144(%rbp)
	cmovle	-1144(%rbp), %r14d
	xorl	%r15d, %r15d
.L2148:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, -1144(%rbp)
	jle	.L2820
	xorl	%r13d, %r13d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -536(%rbp)
	movq	%rax, -528(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-536(%rbp), %rdi
	movq	%rax, -520(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-216(%rbp), %r9
	movq	%r13, -512(%rbp)
	leaq	-176(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -532(%rbp)
	movq	$1, -504(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r11
	popq	%rbx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2316
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2316
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2148
.L2820:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2316:
	movl	%r13d, %ebx
	jmp	.L2201
.L2310:
	movl	%r14d, %ebx
	jmp	.L2201
.L2312:
	movl	%eax, %ebx
	jmp	.L2201
.L2315:
	movl	%r13d, %ebx
	jmp	.L2201
.L2095:
	leaq	-416(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2317
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2317
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -376(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2154
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2155
.L2154:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2156
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2155
.L2156:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2155:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2417
	testl	%eax, %eax
	jne	.L2319
.L2417:
	testl	%ebx, %ebx
	jne	.L2201
	testq	%r13, %r13
	je	.L2201
	testl	%r12d, %r12d
	je	.L2201
	movq	%r14, -256(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-376(%rbp), %rcx
	setne	%al
	xorl	%r10d, %r10d
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movl	$1, -212(%rbp)
	sarl	$7, %edx
	movq	%r10, -192(%rbp)
	movq	$1, -184(%rbp)
	addl	%edx, %eax
	movl	%eax, -216(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -208(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -200(%rbp)
	leaq	-256(%rbp), %rax
	movq	%rax, -1152(%rbp)
	leaq	-216(%rbp), %rax
	movq	-1152(%rbp), %rdx
	movq	%rax, %rdi
	movq	%rax, -1176(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2418
	testl	%eax, %eax
	jne	.L2201
.L2418:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-336(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2419
	testl	%eax, %eax
	jne	.L2201
.L2419:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	movl	-416(%rbp), %edx
	leaq	-296(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2322
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2322
	movl	-296(%rbp), %eax
	cmpl	%eax, -1144(%rbp)
	cmovle	-1144(%rbp), %eax
	xorl	%r14d, %r14d
	movl	%eax, %r15d
.L2161:
	movl	%r14d, -216(%rbp)
	cmpl	%r14d, -1144(%rbp)
	jle	.L2821
	xorl	%r9d, %r9d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r15d, -176(%rbp)
	movq	%rax, -168(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	movq	-1152(%rbp), %r8
	movq	%rax, -160(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %rdi
	movq	%r9, -152(%rbp)
	movq	-1176(%rbp), %r9
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movl	$1, -172(%rbp)
	movq	$1, -144(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rdi
	popq	%r8
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2323
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2323
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r15d, %r14d
	jmp	.L2161
.L2821:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2323:
	movl	%r13d, %ebx
	jmp	.L2201
.L2317:
	movl	%r14d, %ebx
	jmp	.L2201
.L2319:
	movl	%eax, %ebx
	jmp	.L2201
.L2322:
	movl	%r13d, %ebx
	jmp	.L2201
.L2094:
	leaq	-376(%rbp), %rdi
	call	cudaGetDevice@PLT
	movl	%eax, %r14d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r14d, %r14d
	jne	.L2324
	testl	%eax, %eax
	jne	.L2201
	testl	%r14d, %r14d
	jne	.L2324
	xorl	%edx, %edx
	movl	$1920, %ecx
	movl	%r12d, %eax
	divl	%ecx
	cmpl	$1, %edx
	sbbl	$-1, %eax
	movl	%eax, -1144(%rbp)
	movl	%eax, -336(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %eax
	addl	$32, %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	testq	%r13, %r13
	jne	.L2167
	movq	%rax, -1128(%rbp)
	xorl	%r14d, %r14d
	jmp	.L2168
.L2167:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2169
	call	cudaGetLastError@PLT
	xorl	%r14d, %r14d
	movl	$1, %ebx
	jmp	.L2168
.L2169:
	leaq	255(%r13), %r14
	xorb	%r14b, %r14b
.L2168:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2423
	testl	%eax, %eax
	jne	.L2326
.L2423:
	testl	%ebx, %ebx
	jne	.L2201
	testq	%r13, %r13
	je	.L2201
	testl	%r12d, %r12d
	je	.L2201
	movq	%r14, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	movl	-1144(%rbp), %edx
	xorl	%eax, %eax
	testb	$127, -1144(%rbp)
	leaq	-336(%rbp), %rcx
	setne	%al
	xorl	%esi, %esi
	leaq	-576(%rbp), %rdi
	movl	$1, -572(%rbp)
	sarl	$7, %edx
	movq	%rsi, -552(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	movq	$1, -544(%rbp)
	addl	%edx, %eax
	movq	-1152(%rbp), %rdx
	movl	%eax, -576(%rbp)
	movabsq	$549755813889, %rax
	movq	%rax, -568(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -560(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2424
	testl	%eax, %eax
	jne	.L2201
.L2424:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEjEEE9cudaErrorRiT_ii
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2425
	testl	%eax, %eax
	jne	.L2201
.L2425:
	movl	%r13d, %ebx
	testl	%r13d, %r13d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2329
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2329
	movl	-256(%rbp), %r14d
	cmpl	%r14d, -1144(%rbp)
	cmovle	-1144(%rbp), %r14d
	xorl	%r15d, %r15d
.L2174:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, -1144(%rbp)
	jle	.L2822
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-120(%rbp), %rdx
	movl	%r14d, -616(%rbp)
	movq	%rax, -608(%rbp)
	movabsq	$4294967297, %rax
	leaq	-616(%rbp), %rdi
	leaq	-216(%rbp), %r9
	movq	%rax, -600(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%rcx, -592(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEjiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-112(%rbp), %rcx
	movl	$1, -612(%rbp)
	movq	$1, -584(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEjEJS6_S6_SA_iSC_SG_jEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2330
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2330
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2174
.L2822:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2330:
	movl	%r13d, %ebx
	jmp	.L2201
.L2324:
	movl	%r14d, %ebx
	jmp	.L2201
.L2326:
	movl	%eax, %ebx
	jmp	.L2201
.L2329:
	movl	%r13d, %ebx
	jmp	.L2201
.L2091:
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE4dataEv
	leaq	-416(%rbp), %rdi
	movq	%rax, -1144(%rbp)
	xorl	%eax, %eax
	movl	%eax, -416(%rbp)
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %ebx
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2331
	testl	%eax, %eax
	jne	.L2181
	testl	%ebx, %ebx
	jne	.L2331
	movq	-1144(%rbp), %rsi
	movl	-416(%rbp), %eax
	leaq	-1128(%rbp), %rdx
	movq	%r15, -120(%rbp)
	movq	%rdx, -128(%rbp)
	leaq	-376(%rbp), %rdi
	movq	%rsi, -136(%rbp)
	movq	-1168(%rbp), %rsi
	cmpl	$899, %eax
	movb	$0, -96(%rbp)
	movq	%rsi, -112(%rbp)
	movl	%r14d, -88(%rbp)
	movq	%r12, -80(%rbp)
	movq	$1, -72(%rbp)
	movl	%eax, -64(%rbp)
	jg	.L2183
	cmpl	$859, %eax
	jg	.L2184
	cmpl	$799, %eax
	jg	.L2185
	cmpl	$599, %eax
	jg	.L2186
	cmpl	$519, %eax
	jg	.L2187
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2332
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2332
	xorl	%edx, %edx
	movl	$1536, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2190
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2191
.L2190:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2192
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2191
.L2192:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2191:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2431
	testl	%eax, %eax
	jne	.L2334
.L2431:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	leaq	-856(%rbp), %rdi
	movl	$1, -852(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	$1, -824(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movq	%rax, -848(%rbp)
	movabsq	$4294967297, %rax
	movl	%ecx, -856(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -840(%rbp)
	xorl	%eax, %eax
	movq	%rax, -832(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2432
	testl	%ebx, %ebx
	jne	.L2201
.L2432:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2433
	testl	%ebx, %ebx
	jne	.L2201
.L2433:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2337
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2337
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2197:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2823
	movl	%r14d, -816(%rbp)
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	leaq	-120(%rbp), %rdx
	movq	%rax, -808(%rbp)
	leaq	-816(%rbp), %rdi
	movabsq	$4294967297, %rax
	leaq	-216(%rbp), %r9
	movq	%rax, -800(%rbp)
	xorl	%eax, %eax
	leaq	-176(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movq	%rax, -792(%rbp)
	leaq	-80(%rbp), %rax
	movl	$1, -812(%rbp)
	movq	$1, -784(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r11
	popq	%rbx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2338
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2338
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2197
.L2823:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2338:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2332:
	movl	%r13d, %ebx
	jmp	.L2201
.L2334:
	movl	%eax, %ebx
	jmp	.L2201
.L2337:
	movl	%r15d, %ebx
	jmp	.L2201
.L2187:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2339
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2339
	xorl	%edx, %edx
	movl	$1536, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2204
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2205
.L2204:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2206
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2205
.L2206:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2205:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2437
	testl	%eax, %eax
	jne	.L2341
.L2437:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	xorl	%r10d, %r10d
	movl	$1, -892(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	%r10, -872(%rbp)
	movq	$1, -864(%rbp)
	leaq	-896(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -896(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -888(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -880(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2438
	testl	%ebx, %ebx
	jne	.L2201
.L2438:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2439
	testl	%ebx, %ebx
	jne	.L2201
.L2439:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2344
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2344
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2211:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2824
	xorl	%r9d, %r9d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -936(%rbp)
	movq	%rax, -928(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-936(%rbp), %rdi
	movq	%rax, -920(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%r9, -912(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-216(%rbp), %r9
	movl	$1, -932(%rbp)
	movq	$1, -904(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rdi
	popq	%r8
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2345
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2345
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2211
.L2824:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2345:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2339:
	movl	%r13d, %ebx
	jmp	.L2201
.L2341:
	movl	%eax, %ebx
	jmp	.L2201
.L2344:
	movl	%r15d, %ebx
	jmp	.L2201
.L2186:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2346
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2346
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2217
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2218
.L2217:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2219
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2218
.L2219:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2218:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2443
	testl	%eax, %eax
	jne	.L2348
.L2443:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	leaq	-776(%rbp), %rdi
	movl	$1, -772(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	$1, -744(%rbp)
	xorl	%esi, %esi
	movq	%rsi, -752(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -776(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -768(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -760(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2444
	testl	%ebx, %ebx
	jne	.L2201
.L2444:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2445
	testl	%ebx, %ebx
	jne	.L2201
.L2445:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2351
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2351
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2224:
	movl	%r15d, -216(%rbp)
	cmpl	%r13d, %r15d
	jge	.L2825
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-120(%rbp), %rdx
	movl	%r14d, -736(%rbp)
	movq	%rax, -728(%rbp)
	movabsq	$4294967297, %rax
	leaq	-736(%rbp), %rdi
	leaq	-216(%rbp), %r9
	movq	%rax, -720(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%rcx, -712(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-112(%rbp), %rcx
	movl	$1, -732(%rbp)
	movq	$1, -704(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2352
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2352
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2224
.L2825:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2352:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2346:
	movl	%r13d, %ebx
	jmp	.L2201
.L2348:
	movl	%eax, %ebx
	jmp	.L2201
.L2351:
	movl	%r15d, %ebx
	jmp	.L2201
.L2185:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2353
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2353
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2230
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2231
.L2230:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2232
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2231
.L2232:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2231:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2449
	testl	%eax, %eax
	jne	.L2355
.L2449:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	leaq	-976(%rbp), %rdi
	movl	$1, -972(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	$1, -944(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movq	%rax, -968(%rbp)
	movabsq	$4294967297, %rax
	movl	%ecx, -976(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -960(%rbp)
	xorl	%eax, %eax
	movq	%rax, -952(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2450
	testl	%ebx, %ebx
	jne	.L2201
.L2450:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2451
	testl	%ebx, %ebx
	jne	.L2201
.L2451:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2358
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2358
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2237:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2826
	movl	%r14d, -1016(%rbp)
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	leaq	-120(%rbp), %rdx
	movq	%rax, -1008(%rbp)
	leaq	-1016(%rbp), %rdi
	movabsq	$4294967297, %rax
	leaq	-216(%rbp), %r9
	movq	%rax, -1000(%rbp)
	xorl	%eax, %eax
	leaq	-176(%rbp), %r8
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	movq	%rax, -992(%rbp)
	leaq	-80(%rbp), %rax
	movl	$1, -1012(%rbp)
	movq	$1, -984(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%r11
	popq	%rbx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2359
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2359
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2237
.L2826:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2359:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2353:
	movl	%r13d, %ebx
	jmp	.L2201
.L2355:
	movl	%eax, %ebx
	jmp	.L2201
.L2358:
	movl	%r15d, %ebx
	jmp	.L2201
.L2184:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2360
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2360
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2243
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2244
.L2243:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2245
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2244
.L2245:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2244:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2455
	testl	%eax, %eax
	jne	.L2362
.L2455:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	xorl	%r10d, %r10d
	movl	$1, -692(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	%r10, -672(%rbp)
	movq	$1, -664(%rbp)
	leaq	-696(%rbp), %rdi
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -696(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -688(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -680(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2456
	testl	%ebx, %ebx
	jne	.L2201
.L2456:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2457
	testl	%ebx, %ebx
	jne	.L2201
.L2457:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2365
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2365
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2250:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2827
	xorl	%r9d, %r9d
	leaq	-112(%rbp), %rcx
	movabsq	$549755813889, %rax
	movl	%r14d, -656(%rbp)
	movq	%rax, -648(%rbp)
	leaq	-120(%rbp), %rdx
	movabsq	$4294967297, %rax
	leaq	-656(%rbp), %rdi
	movq	%rax, -640(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%r9, -632(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-216(%rbp), %r9
	movl	$1, -652(%rbp)
	movq	$1, -624(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rdi
	popq	%r8
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2366
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2366
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2250
.L2827:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2366:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2360:
	movl	%r13d, %ebx
	jmp	.L2201
.L2362:
	movl	%eax, %ebx
	jmp	.L2201
.L2365:
	movl	%r15d, %ebx
	jmp	.L2201
.L2183:
	call	cudaGetDevice@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r13d, %r13d
	jne	.L2367
	testl	%eax, %eax
	jne	.L2201
	testl	%r13d, %r13d
	jne	.L2367
	xorl	%edx, %edx
	movl	$1920, %ecx
	movq	%r12, %rax
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	movl	%eax, -336(%rbp)
	movq	%rax, %r14
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leal	32(%r14), %eax
	cltq
	leaq	255(,%rax,8), %rax
	orb	$-1, %al
	cmpq	$0, -1144(%rbp)
	jne	.L2256
	movq	%rax, -1128(%rbp)
	xorl	%r15d, %r15d
	jmp	.L2257
.L2256:
	cmpq	%rax, -1128(%rbp)
	jnb	.L2258
	call	cudaGetLastError@PLT
	xorl	%r15d, %r15d
	movl	$1, %ebx
	jmp	.L2257
.L2258:
	movq	-1144(%rbp), %rax
	leaq	255(%rax), %r15
	xorb	%r15b, %r15b
.L2257:
	call	cudaGetLastError@PLT
	testb	$1, %bl
	jne	.L2461
	testl	%eax, %eax
	jne	.L2369
.L2461:
	testl	%ebx, %ebx
	jne	.L2201
	cmpq	$0, -1144(%rbp)
	je	.L2201
	movq	%r15, -176(%rbp)
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	xorl	%ecx, %ecx
	movl	%r13d, %eax
	andl	$127, %r14d
	movl	$128, %esi
	setne	%cl
	cltd
	leaq	-1056(%rbp), %rdi
	movl	$1, -1052(%rbp)
	idivl	%esi
	movq	-1152(%rbp), %rdx
	movq	$1, -1024(%rbp)
	xorl	%esi, %esi
	movq	%rsi, -1032(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS20DeviceScanInitKernelINS0_13ScanTileStateIiLb1EEEEEvT_i(%rip), %rsi
	addl	%eax, %ecx
	movabsq	$549755813889, %rax
	movl	%ecx, -1056(%rbp)
	leaq	-336(%rbp), %rcx
	movq	%rax, -1048(%rbp)
	movabsq	$4294967297, %rax
	movq	%rax, -1040(%rbp)
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvN3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiEJS8_iEEE9cudaErrorT_DpRKT0_.isra.0
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2462
	testl	%ebx, %ebx
	jne	.L2201
.L2462:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	leaq	-296(%rbp), %rdi
	xorl	%ecx, %ecx
	movl	$128, %edx
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	call	_ZN3cub17CUB_200700_890_NS14MaxSmOccupancyIPFvN6thrust20THRUST_200700_890_NS10device_ptrIiEES5_NS0_13ScanTileStateIiLb1EEEiNS3_4plusIvEENS0_6detail10InputValueIiPiEEmEEE9cudaErrorRiT_ii
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2463
	testl	%ebx, %ebx
	jne	.L2201
.L2463:
	movl	%r15d, %ebx
	testl	%r15d, %r15d
	jne	.L2201
	movl	-376(%rbp), %edx
	leaq	-256(%rbp), %rdi
	movl	$5, %esi
	call	cudaDeviceGetAttribute@PLT
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%r15d, %r15d
	jne	.L2372
	testl	%ebx, %ebx
	jne	.L2201
	testl	%r15d, %r15d
	jne	.L2372
	movl	-256(%rbp), %r14d
	cmpl	%r14d, %r13d
	cmovle	%r13d, %r14d
	xorl	%r15d, %r15d
.L2263:
	movl	%r15d, -216(%rbp)
	cmpl	%r15d, %r13d
	jle	.L2828
	movabsq	$549755813889, %rax
	xorl	%ecx, %ecx
	leaq	-120(%rbp), %rdx
	movl	%r14d, -1096(%rbp)
	movq	%rax, -1088(%rbp)
	movabsq	$4294967297, %rax
	leaq	-1096(%rbp), %rdi
	leaq	-216(%rbp), %r9
	movq	%rax, -1080(%rbp)
	leaq	-80(%rbp), %rax
	leaq	-176(%rbp), %r8
	movq	%rcx, -1072(%rbp)
	leaq	_ZN3cub17CUB_200700_890_NS16DeviceScanKernelINS0_16DeviceScanPolicyIiN6thrust20THRUST_200700_890_NS4plusIvEEE9Policy900ENS4_10device_ptrIiEESA_NS0_13ScanTileStateIiLb1EEES6_NS0_6detail10InputValueIiPiEEmiLb0EEEvT0_T1_T2_iT3_T4_T5_(%rip), %rsi
	leaq	-112(%rbp), %rcx
	movl	$1, -1092(%rbp)
	movq	$1, -1064(%rbp)
	pushq	%rax
	leaq	-96(%rbp), %rax
	pushq	%rax
	.cfi_escape 0x2e,0x10
	call	_ZNK6thrust20THRUST_200700_890_NS8cuda_cub8launcher14triple_chevron9doit_hostIPFvNS0_10device_ptrIiEES6_N3cub17CUB_200700_890_NS13ScanTileStateIiLb1EEEiNS0_4plusIvEENS8_6detail10InputValueIiPiEEmEJS6_S6_SA_iSC_SG_mEEE9cudaErrorT_DpRKT0_.isra.0
	popq	%rax
	popq	%rdx
	.cfi_escape 0x2e,0
	call	cudaPeekAtLastError@PLT
	movl	%eax, -1144(%rbp)
	call	cudaGetLastError@PLT
	cmpl	$0, -1144(%rbp)
	movl	%eax, %ebx
	jne	.L2373
	testl	%eax, %eax
	jne	.L2201
	cmpl	$0, -1144(%rbp)
	jne	.L2373
	call	cudaGetLastError@PLT
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	.L2201
	addl	%r14d, %r15d
	jmp	.L2263
.L2828:
	xorl	%ebx, %ebx
	jmp	.L2201
.L2373:
	movl	-1144(%rbp), %ebx
	jmp	.L2201
.L2367:
	movl	%r13d, %ebx
	jmp	.L2201
.L2369:
	movl	%eax, %ebx
	jmp	.L2201
.L2372:
	movl	%r15d, %ebx
.L2201:
	call	cudaGetLastError@PLT
	testl	%ebx, %ebx
	jne	.L2331
	testl	%eax, %eax
	jne	.L2181
	testl	%ebx, %ebx
	je	.L2180
.L2331:
	movl	%ebx, %eax
.L2181:
	movl	%eax, %ebx
.L2180:
	leaq	.LC99(%rip), %rsi
	movl	%ebx, %edi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	leaq	.LC100(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE44:
	movq	-1160(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	movq	-1168(%rbp), %rax
	leaq	(%rax,%r12,4), %rax
	movq	-56(%rbp), %rdx
	subq	%fs:40, %rdx
	je	.L2271
	jmp	.L2781
.L2374:
	endbr64
	movq	%rax, %rbx
.L2269:
	movq	-1160(%rbp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIhNS1_18no_throw_allocatorINS1_19temporary_allocatorIhNS0_8cuda_cub3tagEEEEEE10deallocateEv
	movq	-56(%rbp), %rax
	subq	%fs:40, %rax
	jne	.L2781
	movq	%rbx, %rdi
.LEHB45:
	call	_Unwind_Resume@PLT
.LEHE45:
.L2781:
	call	__stack_chk_fail@PLT
.L2271:
	leaq	-40(%rbp), %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14146:
	.section	.gcc_except_table
.LLSDA14146:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE14146-.LLSDACSB14146
.LLSDACSB14146:
	.uleb128 .LEHB43-.LFB14146
	.uleb128 .LEHE43-.LEHB43
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB44-.LFB14146
	.uleb128 .LEHE44-.LEHB44
	.uleb128 .L2374-.LFB14146
	.uleb128 0
	.uleb128 .LEHB45-.LFB14146
	.uleb128 .LEHE45-.LEHB45
	.uleb128 0
	.uleb128 0
.LLSDACSE14146:
	.section	.text._ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0, .-_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0
	.section	.text._ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_,comdat
	.weak	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	.type	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_, @function
_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_:
.LFB13129:
	.cfi_startproc
	endbr64
	movq	%rdx, %rcx
	movq	%rdi, %rdx
	subq	$24, %rsp
	.cfi_def_cfa_offset 32
	xorl	%r8d, %r8d
	movq	%fs:40, %rax
	movq	%rax, 8(%rsp)
	xorl	%eax, %eax
	subq	%rsi, %rdx
	leaq	7(%rsp), %rax
	movq	%rdi, %rsi
	sarq	$2, %rdx
	movq	%rax, %rdi
	negq	%rdx
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub6detail21exclusive_scan_n_implINS1_3tagENS0_10device_ptrIiEElS6_iNS0_4plusIvEEEET2_RNS1_16execution_policyIT_EET0_T1_S9_T3_T4_.isra.0
	movq	8(%rsp), %rdx
	subq	%fs:40, %rdx
	je	.L2830
	call	__stack_chk_fail@PLT
.L2830:
	addq	$24, %rsp
	.cfi_def_cfa_offset 8
	ret
	.cfi_endproc
.LFE13129:
	.size	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_, .-_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	.section	.rodata._ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v.str1.1,"aMS",@progbits,1
.LC101:
	.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:
.LFB13933:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13933
	endbr64
	movb	_ZGVZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %al
	testb	%al, %al
	jne	.L2842
	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	.L2834
	movq	480+nvtxGlobals_v3(%rip), %rdx
	xorl	%eax, %eax
	testq	%rdx, %rdx
	je	.L2836
	leaq	.LC101(%rip), %rdi
	call	*%rdx
.L2836:
	movq	%rbx, %rdi
	movq	%rax, _ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip)
	call	__cxa_guard_release@PLT
.L2834:
	leaq	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %rax
	popq	%rbx
	.cfi_def_cfa_offset 8
	ret
.L2842:
	.cfi_restore 3
	leaq	_ZZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_vE1d(%rip), %rax
	ret
	.cfi_endproc
.LFE13933:
	.section	.gcc_except_table
.LLSDA13933:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13933-.LLSDACSB13933
.LLSDACSB13933:
.LLSDACSE13933:
	.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._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:
.LFB13876:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13876
	endbr64
	cmpb	$0, 1(%rdi)
	je	.L2848
	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
.L2848:
	ret
	.cfi_endproc
.LFE13876:
	.section	.gcc_except_table
.LLSDA13876:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13876-.LLSDACSB13876
.LLSDACSB13876:
.LLSDACSE13876:
	.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._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em.str1.1,"aMS",@progbits,1
.LC102:
	.string	"cub::DeviceFor::Bulk"
.LC103:
	.string	"parallel_for failed"
.LC104:
	.string	"parallel_for: failed to synchronize"
	.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._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC5Em,comdat
	.align 2
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
	.type	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em, @function
_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em:
.LFB13315:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA13315
	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
	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), %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	movq	%rsi, %rbp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movq	%rdi, %rbx
	subq	$104, %rsp
	.cfi_def_cfa_offset 160
	movq	%fs:40, %rax
	movq	%rax, 88(%rsp)
	xorl	%eax, %eax
	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
	testb	%al, %al
	jne	.L2853
	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), %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L2853
	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), %r13
	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), %r14
	testb	%al, %al
	jne	.L2856
	leaq	_ZGVZN6thrust20THRUST_200700_890_NS2mr19get_global_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS9_EENS0_11use_defaultEEEEEEEPT_vE8resource(%rip), %r15
	movq	%r15, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L2856
	leaq	_ZN6thrust20THRUST_200700_890_NS6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS7_EENS0_11use_defaultEEEED1Ev(%rip), %rdi
	movq	%r13, %rdx
	movq	%r14, %rsi
	call	__cxa_atexit@PLT
	movq	%r15, %rdi
	call	__cxa_guard_release@PLT
.L2856:
	leaq	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEED1Ev(%rip), %rdi
	movq	%r13, %rdx
	movq	%r12, %rsi
	movq	%r14, 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
	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), %rdi
	call	__cxa_guard_release@PLT
.L2853:
	xorl	%ecx, %ecx
	movq	%r12, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rcx, 16(%rbx)
	movq	%rcx, 24(%rbx)
	testq	%rbp, %rbp
	je	.L2851
	leaq	0(,%rbp,4), %rsi
	movl	$4, %edx
	movq	%r12, %rdi
.LEHB46:
	call	_ZN6thrust20THRUST_200700_890_NS26device_ptr_memory_resourceINS0_6system4cuda6detail20cuda_memory_resourceIXadL_Z10cudaMallocEEXadL_Z8cudaFreeEENS0_7pointerIvNS0_8cuda_cub3tagENS0_16tagged_referenceIvS8_EENS0_11use_defaultEEEEEE11do_allocateEmm
.LEHE46:
	movq	%rax, 8(%rbx)
	movq	%rax, %r14
	movq	%rbp, 16(%rbx)
	movq	%rbp, 24(%rbx)
	movw	$0, 10(%rsp)
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %al
	testb	%al, %al
	jne	.L2860
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L2860
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	464+nvtxGlobals_v3(%rip), %rdx
	movq	(%rax), %rdi
	xorl	%eax, %eax
	testq	%rdx, %rdx
	je	.L2862
	leaq	.LC102(%rip), %rsi
	call	*%rdx
.L2862:
	movq	%r12, %rdi
	movq	%rax, _ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip)
	call	__cxa_guard_release@PLT
.L2860:
	movb	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %al
	testb	%al, %al
	jne	.L2864
	leaq	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %r12
	movq	%r12, %rdi
	call	__cxa_guard_acquire@PLT
	testl	%eax, %eax
	je	.L2864
	movq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name(%rip), %rax
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %rdi
	movl	$12, %ecx
	leaq	.LC0(%rip), %rsi
	rep movsl
	movq	%r12, %rdi
	movl	$3, 32+_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip)
	movq	%rax, 40+_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip)
	call	__cxa_guard_release@PLT
.L2864:
	cmpb	$0, 11(%rsp)
	je	.L2866
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	(%rax), %rdi
	call	nvtxDomainRangePop
.L2866:
	call	_ZN5nvtx32v16domain3getIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainELi0EEERKS1_v
	movq	(%rax), %rdi
	movq	416+nvtxGlobals_v3(%rip), %rax
	testq	%rax, %rax
	je	.L2867
	leaq	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr(%rip), %rsi
	call	*%rax
.L2867:
	xorl	%edx, %edx
	leaq	12(%rsp), %rdi
	movb	$1, 11(%rsp)
	leaq	10(%rsp), %r12
	movl	%edx, 12(%rsp)
.LEHB47:
	call	_ZN3cub17CUB_200700_890_NS10PtxVersionERi
	movl	%eax, %r15d
	call	cudaGetLastError@PLT
	movl	%eax, %r13d
	testl	%r15d, %r15d
	jne	.L2884
	testl	%eax, %eax
	jne	.L2868
.L2884:
	movl	%r15d, %r13d
	testl	%r15d, %r15d
	jne	.L2868
	xorl	%eax, %eax
	movq	%rbp, %rdx
	movl	$1, %r9d
	movq	%r14, 24(%rsp)
	movl	%eax, 32(%rsp)
	xorl	%eax, %eax
	testl	$511, %ebp
	setne	%al
	shrq	$9, %rdx
	movl	$1, 52(%rsp)
	xorl	%r8d, %r8d
	addq	%rdx, %rax
	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	.L2870
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	%rbp, %rdi
	call	_ZN3cub17CUB_200700_890_NS6detail8for_each13static_kernelINS2_12policy_hub_t12policy_350_tEmN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS7_10device_ptrIiEEiEEEEvT0_T1_
.L2870:
	call	cudaPeekAtLastError@PLT
	movl	%eax, %r13d
	call	cudaGetLastError@PLT
	movl	%eax, %ebp
	testl	%r13d, %r13d
	jne	.L2885
	testl	%eax, %eax
	jne	.L2871
.L2885:
	movl	%r13d, %ebp
	testl	%r13d, %r13d
	jne	.L2871
	call	cudaGetLastError@PLT
	movl	%eax, %ebp
	testl	%eax, %eax
	je	.L2871
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %ebp
	call	cudaGetLastError@PLT
.L2871:
	call	cudaGetLastError@PLT
.LEHE47:
	movl	%eax, %r13d
	testl	%ebp, %ebp
	jne	.L2886
	testl	%eax, %eax
	jne	.L2868
.L2886:
	movl	%ebp, %r13d
.L2868:
	movq	%r12, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	leaq	.LC103(%rip), %rsi
	movl	%r13d, %edi
.LEHB48:
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
	jmp	.L2920
.L2883:
	endbr64
	movq	%rax, %rbp
.L2875:
	movq	%r12, %rdi
	call	_ZN4cuda3std3__424__optional_destruct_baseIN5nvtx32v115scoped_range_inIN3cub17CUB_200700_890_NS6detail14NVTXCCCLDomainEEELb0EED2Ev
	jmp	.L2876
.L2920:
	movl	$1, %edi
	call	_ZN3cub17CUB_200700_890_NS10SyncStreamEP11CUstream_st
	movl	%eax, %edi
	leaq	.LC104(%rip), %rsi
	call	_ZN6thrust20THRUST_200700_890_NS8cuda_cub14throw_on_errorE9cudaErrorPKc
.LEHE48:
	jmp	.L2851
.L2882:
	endbr64
	movq	%rax, %rbp
.L2876:
	movq	%rbx, %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail18contiguous_storageIiNS0_16device_allocatorIiEEE10deallocateEv
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2919
	movq	%rbp, %rdi
.LEHB49:
	call	_Unwind_Resume@PLT
.LEHE49:
.L2851:
	movq	88(%rsp), %rax
	subq	%fs:40, %rax
	je	.L2878
.L2919:
	call	__stack_chk_fail@PLT
.L2878:
	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
.LFE13315:
	.section	.gcc_except_table
.LLSDA13315:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE13315-.LLSDACSB13315
.LLSDACSB13315:
	.uleb128 .LEHB46-.LFB13315
	.uleb128 .LEHE46-.LEHB46
	.uleb128 .L2882-.LFB13315
	.uleb128 0
	.uleb128 .LEHB47-.LFB13315
	.uleb128 .LEHE47-.LEHB47
	.uleb128 .L2883-.LFB13315
	.uleb128 0
	.uleb128 .LEHB48-.LFB13315
	.uleb128 .LEHE48-.LEHB48
	.uleb128 .L2882-.LFB13315
	.uleb128 0
	.uleb128 .LEHB49-.LFB13315
	.uleb128 .LEHE49-.LEHB49
	.uleb128 0
	.uleb128 0
.LLSDACSE13315:
	.section	.text._ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em,"axG",@progbits,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC5Em,comdat
	.size	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em, .-_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
	.weak	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC1Em
	.set	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC1Em,_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
	.section	.rodata._Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii.str1.1,"aMS",@progbits,1
.LC105:
	.string	"**** Generating Splitters ****"
.LC106:
	.string	"**** Splitters Generated****"
.LC107:
	.string	"**** Generating Buckets ****"
.LC108:
	.string	"**** Buckets Generated ****"
.LC109:
	.string	"**** Sorting Buckets ****"
.LC110:
	.string	"**** Writing Back ****"
.LC114:
	.string	"**** Arrays Sorted, Time Taken : "
.LC115:
	.string	"****"
.LC116:
	.string	"**** Arrays Sorted, Time Taken (on CPU) : "
	.section	.text._Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii, @function
_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii:
.LFB12838:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12838
	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
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rdi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	leal	1(%rcx), %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movslq	%ebp, %rbp
	movl	%ecx, %ebx
	salq	$2, %rbp
	leaq	-4(%rbp), %r14
	subq	$184, %rsp
	.cfi_def_cfa_offset 240
	movq	%fs:40, %rax
	movq	%rax, 168(%rsp)
	xorl	%eax, %eax
	leaq	96(%rsp), %rax
	decl	%edx
	movq	%rax, 16(%rsp)
	leaq	136(%rsp), %rax
	movq	%rax, 8(%rsp)
	leaq	88(%rsp), %rax
	movq	%rax, 24(%rsp)
	jne	.L2922
	movq	16(%rsp), %rdi
	movq	%rbp, %rsi
	leaq	104(%rsp), %r13
.LEHB50:
	call	cudaMalloc@PLT
	movq	96(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	96(%rsp), %rdi
	movq	%rdi, %rdx
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, 104(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	leal	-1(%rbx), %esi
	movq	%r13, %rdi
	movslq	%esi, %rsi
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	8(%rsp), %rdi
	movq	%rax, 136(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv
	movslq	%ebx, %rsi
	addl	-8(%r15,%rbp), %eax
	movq	%r13, %rdi
	movl	%eax, 88(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	24(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movq	%rax, 120(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_
	movq	96(%rsp), %rax
	movq	%rax, 40(%rsp)
.L2922:
	leaq	72(%rsp), %rdi
	call	cudaEventCreate@PLT
	leaq	80(%rsp), %rdi
	call	cudaEventCreate@PLT
	movl	$4, %edi
	call	_Znam@PLT
	movl	$10240, %esi
	xorl	%edi, %edi
	movq	%rax, %r13
	call	cudaDeviceSetLimit@PLT
	movq	24(%rsp), %rdi
	movl	$2, %esi
	call	cudaDeviceGetLimit@PLT
	movq	16(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaDeviceGetLimit@PLT
	leaq	40(%rsp), %rdi
	movq	%rbp, %rsi
	call	cudaMalloc@PLT
	movq	40(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	8(%r12), %rsi
	movq	8(%rsp), %rdi
	subq	(%r12), %rsi
	sarq	$2, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
.LEHE50:
	movq	8(%r12), %rsi
	movq	(%r12), %rdi
	movq	144(%rsp), %rdx
.LEHB51:
	call	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_
	call	cudaDeviceSynchronize@PLT
	movq	72(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	call	clock@PLT
	leaq	48(%rsp), %rdi
	movq	%r14, %rsi
	movq	%rax, %r15
	call	cudaMalloc@PLT
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	movq	48(%rsp), %rsi
	testl	%eax, %eax
	jne	.L2923
	movq	40(%rsp), %rdi
	movl	%ebx, %edx
	call	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
.L2923:
	movq	48(%rsp), %rdi
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, %rdx
	call	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	movq	48(%rsp), %rax
	movl	$2, %ecx
	movl	$4, %edx
	movq	%r13, %rdi
	leaq	-8(%rax,%rbp), %rsi
	call	cudaMemcpy@PLT
	movl	0(%r13), %esi
	leaq	56(%rsp), %rdi
	addl	%ebx, %esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movl	0(%r13), %esi
	leaq	64(%rsp), %rdi
	incl	%esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movq	8(%rsp), %rdi
	xorl	%esi, %esi
	leaq	_ZSt4cout(%rip), %r13
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm
	leaq	.LC105(%rip), %rsi
	movq	%r13, %rdi
	movq	%rax, %r14
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2924
	movq	48(%rsp), %rcx
	movq	40(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	56(%rsp), %rsi
	call	_ZL51__device_stub__Z11splitterKerIiLi100EEvPT_S1_PiS2_iPiS_S_S_i
.L2924:
	leaq	.LC106(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC107(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rax
	movabsq	$4294967301, %rdx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2925
	movq	64(%rsp), %r8
	movq	48(%rsp), %rcx
	movl	%ebx, %r9d
	movq	%r14, %rdi
	movq	40(%rsp), %rdx
	movq	56(%rsp), %rsi
	call	_ZL55__device_stub__Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
.L2925:
	leaq	.LC108(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC109(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rax
	movabsq	$4294967301, %rdx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2926
	movq	40(%rsp), %rcx
	movq	48(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	64(%rsp), %rsi
	call	_ZL51__device_stub__Z11sortBucketsIiLi100EEvPT_PiS2_S2_iPiS_S_S_i
.L2926:
	leaq	.LC110(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movq	80(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	movq	80(%rsp), %rdi
	call	cudaEventSynchronize@PLT
	movq	80(%rsp), %rdx
	movq	72(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movl	$0x00000000, 120(%rsp)
	call	cudaEventElapsedTime@PLT
	call	cudaDeviceSynchronize@PLT
	call	clock@PLT
	subq	%r15, %rax
	cvtsi2sdq	%rax, %xmm0
	movq	24(%r12), %rax
	mulsd	.LC112(%rip), %xmm0
	divsd	.LC113(%rip), %xmm0
	movq	%xmm0, %rbx
	movslq	-4(%rax,%rbp), %rdi
	movabsq	$2305843009213693950, %rax
	cmpq	%rdi, %rax
	jb	.L2927
	salq	$2, %rdi
	call	_Znam@PLT
	movq	%rax, %rdi
	movq	24(%r12), %rax
	movl	$2, %ecx
	movq	%r14, %rsi
	movslq	-4(%rax,%rbp), %rdx
	salq	$2, %rdx
	call	cudaMemcpy@PLT
	jmp	.L2938
.L2927:
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2935
	call	__cxa_throw_bad_array_new_length@PLT
.L2938:
	leaq	.LC114(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	cvtss2sd	120(%rsp), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	leaq	.LC115(%rip), %rbp
	movq	%rax, %rdi
	movq	%rbp, %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
	leaq	.LC116(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	movq	%rbx, %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbp, %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
.LEHE51:
	leaq	136(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	je	.L2932
	jmp	.L2935
.L2933:
	endbr64
	movq	%rax, %rbx
.L2930:
	movq	8(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2935
	movq	%rbx, %rdi
.LEHB52:
	call	_Unwind_Resume@PLT
.LEHE52:
.L2935:
	call	__stack_chk_fail@PLT
.L2932:
	addq	$184, %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
.LFE12838:
	.section	.gcc_except_table
.LLSDA12838:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12838-.LLSDACSB12838
.LLSDACSB12838:
	.uleb128 .LEHB50-.LFB12838
	.uleb128 .LEHE50-.LEHB50
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB51-.LFB12838
	.uleb128 .LEHE51-.LEHB51
	.uleb128 .L2933-.LFB12838
	.uleb128 0
	.uleb128 .LEHB52-.LFB12838
	.uleb128 .LEHE52-.LEHB52
	.uleb128 0
	.uleb128 0
.LLSDACSE12838:
	.section	.text._Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,comdat
	.size	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii, .-_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
	.section	.text._Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii, @function
_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii:
.LFB12839:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12839
	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
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rdi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	leal	1(%rcx), %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movslq	%ebp, %rbp
	movl	%ecx, %ebx
	salq	$2, %rbp
	leaq	-4(%rbp), %r14
	subq	$184, %rsp
	.cfi_def_cfa_offset 240
	movq	%fs:40, %rax
	movq	%rax, 168(%rsp)
	xorl	%eax, %eax
	leaq	96(%rsp), %rax
	decl	%edx
	movq	%rax, 16(%rsp)
	leaq	136(%rsp), %rax
	movq	%rax, 8(%rsp)
	leaq	88(%rsp), %rax
	movq	%rax, 24(%rsp)
	jne	.L2940
	movq	16(%rsp), %rdi
	movq	%rbp, %rsi
	leaq	104(%rsp), %r13
.LEHB53:
	call	cudaMalloc@PLT
	movq	96(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	96(%rsp), %rdi
	movq	%rdi, %rdx
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, 104(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	leal	-1(%rbx), %esi
	movq	%r13, %rdi
	movslq	%esi, %rsi
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	8(%rsp), %rdi
	movq	%rax, 136(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv
	movslq	%ebx, %rsi
	addl	-8(%r15,%rbp), %eax
	movq	%r13, %rdi
	movl	%eax, 88(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	24(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movq	%rax, 120(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_
	movq	96(%rsp), %rax
	movq	%rax, 40(%rsp)
.L2940:
	leaq	72(%rsp), %rdi
	call	cudaEventCreate@PLT
	leaq	80(%rsp), %rdi
	call	cudaEventCreate@PLT
	movl	$4, %edi
	call	_Znam@PLT
	movl	$10240, %esi
	xorl	%edi, %edi
	movq	%rax, %r13
	call	cudaDeviceSetLimit@PLT
	movq	24(%rsp), %rdi
	movl	$2, %esi
	call	cudaDeviceGetLimit@PLT
	movq	16(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaDeviceGetLimit@PLT
	leaq	40(%rsp), %rdi
	movq	%rbp, %rsi
	call	cudaMalloc@PLT
	movq	40(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	8(%r12), %rsi
	movq	8(%rsp), %rdi
	subq	(%r12), %rsi
	sarq	$2, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
.LEHE53:
	movq	8(%r12), %rsi
	movq	(%r12), %rdi
	movq	144(%rsp), %rdx
.LEHB54:
	call	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_
	call	cudaDeviceSynchronize@PLT
	movq	72(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	call	clock@PLT
	leaq	48(%rsp), %rdi
	movq	%r14, %rsi
	movq	%rax, %r15
	call	cudaMalloc@PLT
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	movq	48(%rsp), %rsi
	testl	%eax, %eax
	jne	.L2941
	movq	40(%rsp), %rdi
	movl	%ebx, %edx
	call	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
.L2941:
	movq	48(%rsp), %rdi
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, %rdx
	call	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	movq	48(%rsp), %rax
	movl	$2, %ecx
	movl	$4, %edx
	movq	%r13, %rdi
	leaq	-8(%rax,%rbp), %rsi
	call	cudaMemcpy@PLT
	movl	0(%r13), %esi
	leaq	56(%rsp), %rdi
	addl	%ebx, %esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movl	0(%r13), %esi
	leaq	64(%rsp), %rdi
	incl	%esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movq	8(%rsp), %rdi
	xorl	%esi, %esi
	leaq	_ZSt4cout(%rip), %r13
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm
	leaq	.LC105(%rip), %rsi
	movq	%r13, %rdi
	movq	%rax, %r14
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2942
	movq	48(%rsp), %rcx
	movq	40(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	56(%rsp), %rsi
	call	_ZL52__device_stub__Z11splitterKerIiLi1000EEvPT_S1_PiS2_iPiS_S_S_i
.L2942:
	leaq	.LC106(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC107(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	movl	$2147483673, %edx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movabsq	$4294967297, %rax
	addq	%rdx, %rdx
	movl	$1, %ecx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2943
	movq	64(%rsp), %r8
	movq	48(%rsp), %rcx
	movl	%ebx, %r9d
	movq	%r14, %rdi
	movq	40(%rsp), %rdx
	movq	56(%rsp), %rsi
	call	_ZL56__device_stub__Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
.L2943:
	leaq	.LC108(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC109(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	movl	$2147483673, %edx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movabsq	$4294967297, %rax
	addq	%rdx, %rdx
	movl	$1, %ecx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2944
	movq	40(%rsp), %rcx
	movq	48(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	64(%rsp), %rsi
	call	_ZL52__device_stub__Z11sortBucketsIiLi1000EEvPT_PiS2_S2_iPiS_S_S_i
.L2944:
	leaq	.LC110(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movq	80(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	movq	80(%rsp), %rdi
	call	cudaEventSynchronize@PLT
	movq	80(%rsp), %rdx
	movq	72(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movl	$0x00000000, 120(%rsp)
	call	cudaEventElapsedTime@PLT
	call	cudaDeviceSynchronize@PLT
	call	clock@PLT
	subq	%r15, %rax
	cvtsi2sdq	%rax, %xmm0
	movq	24(%r12), %rax
	mulsd	.LC112(%rip), %xmm0
	divsd	.LC113(%rip), %xmm0
	movq	%xmm0, %rbx
	movslq	-4(%rax,%rbp), %rdi
	movabsq	$2305843009213693950, %rax
	cmpq	%rdi, %rax
	jb	.L2945
	salq	$2, %rdi
	call	_Znam@PLT
	movq	%rax, %rdi
	movq	24(%r12), %rax
	movl	$2, %ecx
	movq	%r14, %rsi
	movslq	-4(%rax,%rbp), %rdx
	salq	$2, %rdx
	call	cudaMemcpy@PLT
	jmp	.L2956
.L2945:
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2953
	call	__cxa_throw_bad_array_new_length@PLT
.L2956:
	leaq	.LC114(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	cvtss2sd	120(%rsp), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	leaq	.LC115(%rip), %rbp
	movq	%rax, %rdi
	movq	%rbp, %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
	leaq	.LC116(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	movq	%rbx, %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbp, %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
.LEHE54:
	leaq	136(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	je	.L2950
	jmp	.L2953
.L2951:
	endbr64
	movq	%rax, %rbx
.L2948:
	movq	8(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2953
	movq	%rbx, %rdi
.LEHB55:
	call	_Unwind_Resume@PLT
.LEHE55:
.L2953:
	call	__stack_chk_fail@PLT
.L2950:
	addq	$184, %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
.LFE12839:
	.section	.gcc_except_table
.LLSDA12839:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12839-.LLSDACSB12839
.LLSDACSB12839:
	.uleb128 .LEHB53-.LFB12839
	.uleb128 .LEHE53-.LEHB53
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB54-.LFB12839
	.uleb128 .LEHE54-.LEHB54
	.uleb128 .L2951-.LFB12839
	.uleb128 0
	.uleb128 .LEHB55-.LFB12839
	.uleb128 .LEHE55-.LEHB55
	.uleb128 0
	.uleb128 0
.LLSDACSE12839:
	.section	.text._Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,comdat
	.size	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii, .-_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
	.section	.text._Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii, @function
_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii:
.LFB12840:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12840
	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
	pushq	%r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	pushq	%r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	movq	%rdi, %r12
	pushq	%rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	leal	1(%rcx), %ebp
	pushq	%rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	movslq	%ebp, %rbp
	movl	%ecx, %ebx
	salq	$2, %rbp
	leaq	-4(%rbp), %r14
	subq	$184, %rsp
	.cfi_def_cfa_offset 240
	movq	%fs:40, %rax
	movq	%rax, 168(%rsp)
	xorl	%eax, %eax
	leaq	96(%rsp), %rax
	decl	%edx
	movq	%rax, 16(%rsp)
	leaq	136(%rsp), %rax
	movq	%rax, 8(%rsp)
	leaq	88(%rsp), %rax
	movq	%rax, 24(%rsp)
	jne	.L2958
	movq	16(%rsp), %rdi
	movq	%rbp, %rsi
	leaq	104(%rsp), %r13
.LEHB56:
	call	cudaMalloc@PLT
	movq	96(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	96(%rsp), %rdi
	movq	%rdi, %rdx
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, 104(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS14exclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	leal	-1(%rbx), %esi
	movq	%r13, %rdi
	movslq	%esi, %rsi
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	8(%rsp), %rdi
	movq	%rax, 136(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEEcviEv
	movslq	%ebx, %rsi
	addl	-8(%r15,%rbp), %eax
	movq	%r13, %rdi
	movl	%eax, 88(%rsp)
	call	_ZNK6thrust20THRUST_200700_890_NS15iterator_facadeINS0_10device_ptrIiEEiNS0_8cuda_cub3tagENS0_27random_access_traversal_tagENS0_16device_referenceIiEElEixEl
	movq	24(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movq	%rax, 120(%rsp)
	call	_ZN6thrust20THRUST_200700_890_NS9referenceIiNS0_10device_ptrIiEENS0_16device_referenceIiEEE11assign_fromIPKiEEvT_
	movq	96(%rsp), %rax
	movq	%rax, 40(%rsp)
.L2958:
	leaq	72(%rsp), %rdi
	call	cudaEventCreate@PLT
	leaq	80(%rsp), %rdi
	call	cudaEventCreate@PLT
	movl	$4, %edi
	call	_Znam@PLT
	movl	$10240, %esi
	xorl	%edi, %edi
	movq	%rax, %r13
	call	cudaDeviceSetLimit@PLT
	movq	24(%rsp), %rdi
	movl	$2, %esi
	call	cudaDeviceGetLimit@PLT
	movq	16(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaDeviceGetLimit@PLT
	leaq	40(%rsp), %rdi
	movq	%rbp, %rsi
	call	cudaMalloc@PLT
	movq	40(%rsp), %rdi
	movq	%rbp, %rdx
	movq	%r15, %rsi
	movl	$1, %ecx
	call	cudaMemcpy@PLT
	movq	8(%r12), %rsi
	movq	8(%rsp), %rdi
	subq	(%r12), %rsi
	sarq	$2, %rsi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEC2Em
.LEHE56:
	movq	8(%r12), %rsi
	movq	(%r12), %rdi
	movq	144(%rsp), %rdx
.LEHB57:
	call	_ZN6thrust20THRUST_200700_890_NS4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEENS0_6detail15normal_iteratorINS0_10device_ptrIiEEEEEET0_T_SF_SE_
	call	cudaDeviceSynchronize@PLT
	movq	72(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	call	clock@PLT
	leaq	48(%rsp), %rdi
	movq	%r14, %rsi
	movq	%rax, %r15
	call	cudaMalloc@PLT
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	movq	48(%rsp), %rsi
	testl	%eax, %eax
	jne	.L2959
	movq	40(%rsp), %rdi
	movl	%ebx, %edx
	call	_Z38__device_stub__Z15getNumOfBucketsPiS_iPiS_i
.L2959:
	movq	48(%rsp), %rdi
	leaq	(%rdi,%r14), %rsi
	movq	%rdi, %rdx
	call	_ZN6thrust20THRUST_200700_890_NS14inclusive_scanINS0_10device_ptrIiEES3_EET0_T_S5_S4_
	movq	48(%rsp), %rax
	movl	$2, %ecx
	movl	$4, %edx
	movq	%r13, %rdi
	leaq	-8(%rax,%rbp), %rsi
	call	cudaMemcpy@PLT
	movl	0(%r13), %esi
	leaq	56(%rsp), %rdi
	addl	%ebx, %esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movl	0(%r13), %esi
	leaq	64(%rsp), %rdi
	incl	%esi
	movslq	%esi, %rsi
	salq	$2, %rsi
	call	cudaMalloc@PLT
	movq	8(%rsp), %rdi
	xorl	%esi, %esi
	leaq	_ZSt4cout(%rip), %r13
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEEixEm
	leaq	.LC105(%rip), %rsi
	movq	%r13, %rdi
	movq	%rax, %r14
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movl	$1, %ecx
	movabsq	$4294967297, %rdx
	movl	$1, 128(%rsp)
	movq	%rdx, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2960
	movq	48(%rsp), %rcx
	movq	40(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	56(%rsp), %rsi
	call	_ZL53__device_stub__Z11splitterKerIiLi10000EEvPT_S1_PiS2_iPiS_S_S_i
.L2960:
	leaq	.LC106(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC107(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	movl	$1073741949, %edx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movabsq	$4294967297, %rax
	salq	$2, %rdx
	movl	$1, %ecx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2961
	movq	64(%rsp), %r8
	movq	48(%rsp), %rcx
	movl	%ebx, %r9d
	movq	%r14, %rdi
	movq	40(%rsp), %rdx
	movq	56(%rsp), %rsi
	call	_ZL57__device_stub__Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_iPiS_S_S_S_i
.L2961:
	leaq	.LC108(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	leaq	.LC109(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movl	%ebx, 104(%rsp)
	movl	$1073741949, %edx
	xorl	%r9d, %r9d
	xorl	%r8d, %r8d
	movabsq	$4294967297, %rax
	salq	$2, %rdx
	movl	$1, %ecx
	movl	$1, 128(%rsp)
	movq	%rax, 108(%rsp)
	movq	104(%rsp), %rdi
	movl	112(%rsp), %esi
	movq	%rdx, 120(%rsp)
	call	__cudaPushCallConfiguration@PLT
	testl	%eax, %eax
	jne	.L2962
	movq	40(%rsp), %rcx
	movq	48(%rsp), %rdx
	movl	%ebx, %r8d
	movq	%r14, %rdi
	movq	64(%rsp), %rsi
	call	_ZL53__device_stub__Z11sortBucketsIiLi10000EEvPT_PiS2_S2_iPiS_S_S_i
.L2962:
	leaq	.LC110(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
	movq	80(%rsp), %rdi
	xorl	%esi, %esi
	call	cudaEventRecord@PLT
	movq	80(%rsp), %rdi
	call	cudaEventSynchronize@PLT
	movq	80(%rsp), %rdx
	movq	72(%rsp), %rsi
	leaq	120(%rsp), %rdi
	movl	$0x00000000, 120(%rsp)
	call	cudaEventElapsedTime@PLT
	call	cudaDeviceSynchronize@PLT
	call	clock@PLT
	subq	%r15, %rax
	cvtsi2sdq	%rax, %xmm0
	movq	24(%r12), %rax
	mulsd	.LC112(%rip), %xmm0
	divsd	.LC113(%rip), %xmm0
	movq	%xmm0, %rbx
	movslq	-4(%rax,%rbp), %rdi
	movabsq	$2305843009213693950, %rax
	cmpq	%rdi, %rax
	jb	.L2963
	salq	$2, %rdi
	call	_Znam@PLT
	movq	%rax, %rdi
	movq	24(%r12), %rax
	movl	$2, %ecx
	movq	%r14, %rsi
	movslq	-4(%rax,%rbp), %rdx
	salq	$2, %rdx
	call	cudaMemcpy@PLT
	jmp	.L2974
.L2963:
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2971
	call	__cxa_throw_bad_array_new_length@PLT
.L2974:
	leaq	.LC114(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	cvtss2sd	120(%rsp), %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	leaq	.LC115(%rip), %rbp
	movq	%rax, %rdi
	movq	%rbp, %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
	leaq	.LC116(%rip), %rsi
	movq	%r13, %rdi
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	%rax, %rdi
	movq	%rbx, %xmm0
	call	_ZNSo9_M_insertIdEERSoT_@PLT
	movq	%rax, %rdi
	movq	%rbp, %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
.LEHE57:
	leaq	136(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	je	.L2968
	jmp	.L2971
.L2969:
	endbr64
	movq	%rax, %rbx
.L2966:
	movq	8(%rsp), %rdi
	call	_ZN6thrust20THRUST_200700_890_NS6detail11vector_baseIiNS0_16device_allocatorIiEEED2Ev
	movq	168(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L2971
	movq	%rbx, %rdi
.LEHB58:
	call	_Unwind_Resume@PLT
.LEHE58:
.L2971:
	call	__stack_chk_fail@PLT
.L2968:
	addq	$184, %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
.LFE12840:
	.section	.gcc_except_table
.LLSDA12840:
	.byte	0xff
	.byte	0xff
	.byte	0x1
	.uleb128 .LLSDACSE12840-.LLSDACSB12840
.LLSDACSB12840:
	.uleb128 .LEHB56-.LFB12840
	.uleb128 .LEHE56-.LEHB56
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB57-.LFB12840
	.uleb128 .LEHE57-.LEHB57
	.uleb128 .L2969-.LFB12840
	.uleb128 0
	.uleb128 .LEHB58-.LFB12840
	.uleb128 .LEHE58-.LEHB58
	.uleb128 0
	.uleb128 0
.LLSDACSE12840:
	.section	.text._Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,comdat
	.size	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii, .-_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
	.section	.rodata.str1.1
.LC117:
	.string	"Need 2 arguments\n"
.LC118:
	.string	"stoi"
.LC119:
	.string	"%i arrays of length %i\n"
.LC120:
	.string	"Incorrect arraysizes, we only support 100, 1000 and 10000\n"
	.section	.text.startup
	.globl	main
	.type	main, @function
main:
.LFB12252:
	.cfi_startproc
	.cfi_personality 0x9b,DW.ref.__gxx_personality_v0
	.cfi_lsda 0x1b,.LLSDA12252
	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
	addq	$-128, %rsp
	.cfi_def_cfa_offset 176
	movq	%fs:40, %rax
	movq	%rax, 120(%rsp)
	xorl	%eax, %eax
	cmpl	$3, %edi
	je	.L2976
	leaq	.LC117(%rip), %rsi
	movl	$2, %edi
.LEHB59:
	call	__printf_chk@PLT
	jmp	.L2977
.L2976:
	movq	%rsi, %r13
	leaq	56(%rsp), %r12
	movq	8(%rsi), %rsi
	leaq	88(%rsp), %rbp
	movq	%r12, %rdx
	movq	%rbp, %rdi
	leaq	.LC118(%rip), %r14
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE59:
	movq	88(%rsp), %rdx
	xorl	%ecx, %ecx
	movq	%r14, %rsi
	movq	__isoc23_strtol@GOTPCREL(%rip), %rdi
	movl	$10, %r8d
.LEHB60:
	call	_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_
.LEHE60:
	movq	%rbp, %rdi
	movl	%eax, %ebx
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movq	16(%r13), %rsi
	movq	%r12, %rdx
	movq	%rbp, %rdi
.LEHB61:
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_
.LEHE61:
	movq	88(%rsp), %rdx
	xorl	%ecx, %ecx
	movq	%r14, %rsi
	movq	__isoc23_strtol@GOTPCREL(%rip), %rdi
	movl	$10, %r8d
.LEHB62:
	call	_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_
.LEHE62:
	movl	%eax, %r13d
	movq	%rbp, %rdi
	leaq	24(%rsp), %rbp
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	movl	%r13d, %ecx
	movl	%ebx, %edx
	movl	$2, %edi
	leaq	.LC119(%rip), %rsi
	xorl	%eax, %eax
.LEHB63:
	call	__printf_chk@PLT
.LEHE63:
	xorl	%ecx, %ecx
	movl	%ebx, %edx
	movl	%r13d, %esi
	movq	%r12, %rdi
	movq	%rcx, 24(%rsp)
	movq	%rcx, 32(%rsp)
	movq	%rcx, 40(%rsp)
.LEHB64:
	call	_Z8readFileii
.LEHE64:
	xorl	%eax, %eax
	xorl	%edx, %edx
	movq	%rsp, %rdi
	movq	%rax, (%rsp)
	movq	%rax, 8(%rsp)
	movq	%rax, 16(%rsp)
	movq	56(%rsp), %rax
	movq	%rdx, 56(%rsp)
	movq	%rax, 24(%rsp)
	movq	64(%rsp), %rax
	movq	%rdx, 64(%rsp)
	movq	%rax, 32(%rsp)
	movq	72(%rsp), %rax
	movq	%rdx, 72(%rsp)
	movq	%rax, 40(%rsp)
	call	_ZNSt6vectorIiSaIiEED1Ev
	movq	80(%rsp), %r14
	movq	%r12, %rdi
	movq	%r14, 48(%rsp)
	call	_ZNSt6vectorIiSaIiEED1Ev
	cmpl	$100, %r13d
	jne	.L2978
	movq	%rbp, %rsi
	movq	%r12, %rdi
.LEHB65:
	call	_ZN10dataArraysIiEC1ERKS0_
.LEHE65:
	movl	%ebx, %ecx
	xorl	%edx, %edx
	movq	%r14, %rsi
	movq	%r12, %rdi
.LEHB66:
	call	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
.LEHE66:
	jmp	.L3005
.L2978:
	cmpl	$1000, %r13d
	jne	.L2980
	movq	%rbp, %rsi
	movq	%r12, %rdi
.LEHB67:
	call	_ZN10dataArraysIiEC1ERKS0_
.LEHE67:
	movl	%ebx, %ecx
	xorl	%edx, %edx
	movq	%r14, %rsi
	movq	%r12, %rdi
.LEHB68:
	call	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
.LEHE68:
	jmp	.L3005
.L2980:
	cmpl	$10000, %r13d
	jne	.L2981
	movq	%rbp, %rsi
	movq	%r12, %rdi
.LEHB69:
	call	_ZN10dataArraysIiEC1ERKS0_
.LEHE69:
	movl	%ebx, %ecx
	xorl	%edx, %edx
	movq	%r14, %rsi
	movq	%r12, %rdi
.LEHB70:
	call	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
.LEHE70:
.L3005:
	movq	%r12, %rdi
	call	_ZNSt6vectorIiSaIiEED1Ev
	jmp	.L2979
.L2981:
	leaq	.LC120(%rip), %rsi
	movl	$2, %edi
	xorl	%eax, %eax
.LEHB71:
	call	__printf_chk@PLT
.LEHE71:
.L2979:
	movq	%rbp, %rdi
	call	_ZNSt6vectorIiSaIiEED1Ev
.L2977:
	movq	120(%rsp), %rax
	subq	%fs:40, %rax
	je	.L2994
	jmp	.L3003
.L2995:
	endbr64
	jmp	.L3009
.L2996:
	endbr64
.L3009:
	movq	%rax, %rbx
.L2984:
	movq	%rbp, %rdi
	call	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv@PLT
	jmp	.L3008
.L2997:
	endbr64
	movq	%rax, %rdi
.L2986:
	decq	%rdx
	movq	%rax, %rbx
	jne	.L2988
	call	__cxa_begin_catch@PLT
	leaq	_ZSt4cerr(%rip), %rdi
	movq	%rax, %rsi
.LEHB72:
	call	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@PLT
	movq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GOTPCREL(%rip), %rsi
	movq	%rax, %rdi
	call	_ZNSolsEPFRSoS_E.isra.0
.LEHE72:
	call	__cxa_end_catch@PLT
	jmp	.L2979
.L2999:
	endbr64
	movq	%rax, %rbx
.L2989:
	call	__cxa_end_catch@PLT
	jmp	.L2988
.L3000:
	endbr64
	jmp	.L3007
.L3001:
	endbr64
	jmp	.L3007
.L3002:
	endbr64
.L3007:
	movq	%rax, %rbx
.L2992:
	movq	%r12, %rdi
	call	_ZNSt6vectorIiSaIiEED1Ev
	jmp	.L2988
.L2998:
	endbr64
	movq	%rax, %rbx
.L2988:
	movq	%rbp, %rdi
	call	_ZNSt6vectorIiSaIiEED1Ev
.L3008:
	movq	120(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L3003
	movq	%rbx, %rdi
.LEHB73:
	call	_Unwind_Resume@PLT
.LEHE73:
.L3003:
	call	__stack_chk_fail@PLT
.L2994:
	subq	$-128, %rsp
	.cfi_def_cfa_offset 48
	xorl	%eax, %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
.LFE12252:
	.section	.gcc_except_table
	.align 4
.LLSDA12252:
	.byte	0xff
	.byte	0x9b
	.uleb128 .LLSDATT12252-.LLSDATTD12252
.LLSDATTD12252:
	.byte	0x1
	.uleb128 .LLSDACSE12252-.LLSDACSB12252
.LLSDACSB12252:
	.uleb128 .LEHB59-.LFB12252
	.uleb128 .LEHE59-.LEHB59
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB60-.LFB12252
	.uleb128 .LEHE60-.LEHB60
	.uleb128 .L2995-.LFB12252
	.uleb128 0
	.uleb128 .LEHB61-.LFB12252
	.uleb128 .LEHE61-.LEHB61
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB62-.LFB12252
	.uleb128 .LEHE62-.LEHB62
	.uleb128 .L2996-.LFB12252
	.uleb128 0
	.uleb128 .LEHB63-.LFB12252
	.uleb128 .LEHE63-.LEHB63
	.uleb128 0
	.uleb128 0
	.uleb128 .LEHB64-.LFB12252
	.uleb128 .LEHE64-.LEHB64
	.uleb128 .L2997-.LFB12252
	.uleb128 0x3
	.uleb128 .LEHB65-.LFB12252
	.uleb128 .LEHE65-.LEHB65
	.uleb128 .L2998-.LFB12252
	.uleb128 0
	.uleb128 .LEHB66-.LFB12252
	.uleb128 .LEHE66-.LEHB66
	.uleb128 .L3000-.LFB12252
	.uleb128 0
	.uleb128 .LEHB67-.LFB12252
	.uleb128 .LEHE67-.LEHB67
	.uleb128 .L2998-.LFB12252
	.uleb128 0
	.uleb128 .LEHB68-.LFB12252
	.uleb128 .LEHE68-.LEHB68
	.uleb128 .L3001-.LFB12252
	.uleb128 0
	.uleb128 .LEHB69-.LFB12252
	.uleb128 .LEHE69-.LEHB69
	.uleb128 .L2998-.LFB12252
	.uleb128 0
	.uleb128 .LEHB70-.LFB12252
	.uleb128 .LEHE70-.LEHB70
	.uleb128 .L3002-.LFB12252
	.uleb128 0
	.uleb128 .LEHB71-.LFB12252
	.uleb128 .LEHE71-.LEHB71
	.uleb128 .L2998-.LFB12252
	.uleb128 0
	.uleb128 .LEHB72-.LFB12252
	.uleb128 .LEHE72-.LEHB72
	.uleb128 .L2999-.LFB12252
	.uleb128 0
	.uleb128 .LEHB73-.LFB12252
	.uleb128 .LEHE73-.LEHB73
	.uleb128 0
	.uleb128 0
.LLSDACSE12252:
	.byte	0
	.byte	0
	.byte	0x1
	.byte	0x7d
	.align 4
	.long	DW.ref._ZTIPKc-.
.LLSDATT12252:
	.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	_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_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr,comdat
	.align 32
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr, 48
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_attr:
	.zero	48
	.weak	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZGVZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name:
	.zero	8
	.weak	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name
	.section	.bss._ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,"awG",@nobits,_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name,comdat
	.align 8
	.type	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, @gnu_unique_object
	.size	_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_T0_P11CUstream_stE21__cub_nvtx3_func_name, 8
_ZZN3cub17CUB_200700_890_NS9DeviceFor4BulkImN6thrust20THRUST_200700_890_NS8cuda_cub20__uninitialized_fill7functorINS4_10device_ptrIiEEiEEEE9cudaErrorT_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
	.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
	.type	_ZN6thrust20THRUST_200700_890_NSL3seqE, @object
	.size	_ZN6thrust20THRUST_200700_890_NSL3seqE, 1
_ZN6thrust20THRUST_200700_890_NSL3seqE:
	.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
	.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
	.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
	.section	.rodata
	.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__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE
	.weak	_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE
	.section	.rodata._ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE,"aG",@progbits,_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE,comdat
	.type	_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE, @gnu_unique_object
	.size	_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE, 1
_ZN4cuda3std3__453_GLOBAL__N__2126c073_20_GPU_ArraySort_2_0_cu_afb875596ignoreE:
	.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
	.local	_ZL17__cr_lgamma_table
	.comm	_ZL17__cr_lgamma_table,72,32
	.local	_ZL13mrg32k3aM2Seq
	.comm	_ZL13mrg32k3aM2Seq,2304,32
	.local	_ZL13mrg32k3aM1Seq
	.comm	_ZL13mrg32k3aM1Seq,2304,32
	.local	_ZL16mrg32k3aM2SubSeq
	.comm	_ZL16mrg32k3aM2SubSeq,2016,32
	.local	_ZL16mrg32k3aM1SubSeq
	.comm	_ZL16mrg32k3aM1SubSeq,2016,32
	.local	_ZL10mrg32k3aM2
	.comm	_ZL10mrg32k3aM2,2304,32
	.local	_ZL10mrg32k3aM1
	.comm	_ZL10mrg32k3aM1,2304,32
	.local	_ZL28precalc_xorwow_offset_matrix
	.comm	_ZL28precalc_xorwow_offset_matrix,102400,32
	.local	_ZL21precalc_xorwow_matrix
	.comm	_ZL21precalc_xorwow_matrix,102400,32
	.section	.rodata.cst8,"aM",@progbits,8
	.align 8
.LC112:
	.long	0
	.long	1083129856
	.align 8
.LC113:
	.long	0
	.long	1093567616
	.hidden	DW.ref._ZTIPKc
	.weak	DW.ref._ZTIPKc
	.section	.data.rel.local.DW.ref._ZTIPKc,"awG",@progbits,DW.ref._ZTIPKc,comdat
	.align 8
	.type	DW.ref._ZTIPKc, @object
	.size	DW.ref._ZTIPKc, 8
DW.ref._ZTIPKc:
	.quad	_ZTIPKc
	.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:

/*
Copyright (C) Muaaz Gul Awan and Fahad Saeed  
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
*/



#include <hip/hip_runtime.h>
#include<iostream>
#include<vector>
#include<stdlib.h>
#include<time.h>
#include<math.h>
#include<ctime>
#include<algorithm>
#include<utility>
#include <hiprand/hiprand.h>
#include <hiprand/hiprand_kernel.h>
#include<random>
#include <thrust/scan.h>
#include <thrust/device_vector.h>
#include <thrust/host_vector.h>

#include <string>
#include <fstream>

using namespace std;

#define elesPerBucket 20
#define sampleRate 10
//#define totArrays 10000
#define maxSize2 10000
//#define minSize 10000
#define SAMPLED (sampleRate*maxSize)/100
#define maxBuckets (maxSize/elesPerBucket)

inline
hipError_t checkCuda(hipError_t result)
{
#if defined(DEBUG) || defined(_DEBUG)
  if (result != hipSuccess) {
    fprintf(stderr, "CUDA Runtime Error: %s\n", hipGetErrorString(result));
    assert(result == hipSuccess);
  }
#endif
  return result;
}

//swap function for Insertion sort
template <class type>
 __device__ void  swapD (type &a, type &b)

{
    /* &a and &b are reference variables */
    type temp;
        temp=a;
	a=b;
        b=temp;
}
//insertion sort
template <class type>
 __device__ void insertionSort(type *input, int begin, int end){
int i, j; //,tmp;
 for (i = begin+1; i < end; i++) {
 j = i;
 while (j > begin && input[j - 1] > input[j]) {
 swapD(input[j], input[j-1]);
 j--;
 }//end of while loop
}
}



__device__ void getMinMax(int input[], int beginPtr, int endPtr, int *ret){
          int min = input[beginPtr];
          int max = 0;
        // int *ret = new int[2];
          for(int i = beginPtr; i < endPtr; i++){
              if(min > input[i])
                  min = input[i];
              if (max < input[i])
                  max = input[i];     
            }

     ret[0] = min;
     ret[1] = max;
//return ret;

}

//data generation
template <typename mType>
struct dataArrays{
	vector<mType> dataList;
	int *prefixArray;
};


template <typename type> 
dataArrays<type> dataGen (int numOfArrays, int maxArraySize, int minArraySize){
	
   dataArrays<int> data;
   data.prefixArray = new int[numOfArrays+1]; //exclusive prefix scan
   const int range_from = 0;
   const unsigned int range_to = 5000;//2147483647; //2^31 - 1
   random_device rand_dev;
   mt19937 generator(rand_dev());
   uniform_int_distribution<int> distr(range_from, range_to);
   int prefixSum = 0;
   srand(time(0));
	for( int i = 0; i < numOfArrays; i++){
	
		int size = rand()%(maxArraySize-minArraySize + 1) + minArraySize;
		data.prefixArray[i] = prefixSum;
		for(int j = prefixSum; j < prefixSum + size; j++){
			data.dataList.push_back(distr(generator));
		}
		prefixSum += size;
	}
	
	data.prefixArray[numOfArrays] = prefixSum;
	return data;
}

//kernel for obtaining num of buckets for each array
__global__ void getNumOfBuckets(int *prefixSumArray, int *numOfBucketsArray, int totArrays){
	int id = blockIdx.x; // * blockDim.x + threadIdx.x;
	
	if(id < totArrays)
		numOfBucketsArray[id] = (prefixSumArray[id+1] - prefixSumArray[id])/elesPerBucket;
}

template <typename mType, int maxSize>
__device__ void getSplitters (mType *data, mType *splittersArray, int sample[], int beginPtr, int endPtr, int arraySize, int *prefixBucketsArray){
           __shared__ mType mySamples[SAMPLED];
		   
            //int *ret = new int[2];
			//int arraySize = endPtr - beginPtr;
			// calculating samples for this array
			int numOfSamples = ((float)sampleRate/100)*(arraySize);
			//calculating the number of buckets for this array
			int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
			
            for(int i = 0; i < numOfSamples; i++)
	           mySamples[i] = data[beginPtr+sample[i]];

	        insertionSort(mySamples, 0, numOfSamples);
	 
	        //calculate splitter index for this array 
            int splitterIndex = ((blockIdx.x == 0)? 1 : (prefixBucketsArray[blockIdx.x-1]+1))+1; //the other plus one is for leaving space for smallest splitter(added later)
            int splittersSize=0;
	        for(int i = (numOfSamples)/(numOfBuckets); splittersSize < numOfBuckets-1; i +=(numOfSamples)/(numOfBuckets)){
                 splittersArray[splitterIndex] = mySamples[i];
                 splitterIndex++;
                 splittersSize++;
             }
            //getMinMax(data, beginPtr, endPtr, ret);
			int bits = 8*sizeof(mType);
            mType min = -(1 << (bits-1));
            mType max = (1 << (bits - 1)) - 1;//int max =  (1 << (bits-1)) � 1;
            splittersArray[((blockIdx.x == 0)? 0 : (prefixBucketsArray[blockIdx.x-1]+1))] = min;//ret[0]-2;//to accodmodate the smallest
            splittersArray[((blockIdx.x == 0)? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x]))] = max;//ret[1]+2;
      
            //delete [] ret;
}

//kernel for obtaining splitters
template <typename mType, int maxSize>
__global__ void splitterKer(mType *data, mType *splittersArray, int *prefixSizeArray, int *prefixBucketsArray, int totArrays){
          if(blockIdx.x < totArrays){
             int id = blockIdx.x;
	         __shared__ int sampleSh[SAMPLED];
			 int arraySize = prefixSizeArray[id+1] - prefixSizeArray[id];
			// calculating samples for this array
			int numOfSamples = ((float)sampleRate/100)*(arraySize);
            //int *h_sample = new int[SAMPLED];
            int max = arraySize;
            int  sam = numOfSamples;
            int stride = max/sam;
	        int sampleVal = 0;
            for( int i = 0; i < numOfSamples; i++)
            {
               sampleSh[i] = sampleVal;
               sampleVal += stride; 
            }
			 
	        //for(int i = 0; i < numOfSamples; i++)
	           // sampleSh[i] = mySample[i];

	        getSplitters<mType, maxSize>(data, splittersArray, sampleSh, prefixSizeArray[id], prefixSizeArray[id+1], prefixSizeArray[id+1] - prefixSizeArray[id], prefixBucketsArray);

           }
        }

		
template <typename mType, int maxSize>
__device__ void getBuckets(mType *input, mType *splitters, int beginPtr, int endPtr, int *bucketsSize, mType *myInput, int *prefixBucketsArray, int totArrays){
     volatile int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
        
	if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
	  
	  int id = threadIdx.x;
	  int sizeOffset = (blockIdx.x == 0) ? (0+threadIdx.x) : (prefixBucketsArray[blockIdx.x-1] + threadIdx.x);  //blockIdx.x*BUCKETS+threadIdx.x;
	  int sizeOffsetBlock = (blockIdx.x == 0) ? (0) : (prefixBucketsArray[blockIdx.x-1]);
      int bucketSizeOff = sizeOffset+1;
      mType myBucket[maxSize]; //make it shared as well
     // int bucketIndexOffset;
      int indexSum=0;
      bucketsSize[bucketSizeOff] = 0;

     for(int i = 0; i < (endPtr - beginPtr); i++){
         if(myInput[i] > splitters[id] && myInput[i] <= splitters[id+1]){
         myBucket[bucketsSize[bucketSizeOff]] = myInput[i];
         bucketsSize[bucketSizeOff]++;

        }
     }
       
    __syncthreads();
     
         //prefix sum for bucket sizes of current array
     for(int j = 0; j < threadIdx.x; j++)
        indexSum += bucketsSize[sizeOffsetBlock+j+1];

         //writing back current buckt back to the input memory
	 for(int i = 0; i < bucketsSize[bucketSizeOff]; i++)
             input[indexSum+beginPtr+i] = myBucket[i];
	}
      

}
		
//kernel for obtaining buckets
template <typename mType, int maxSize>
__global__ void bucketKernel(mType *data, mType *splittersArray, int *prefixSizeArray, int *prefixBucketsArray, int *bucketSizes, int totArrays){
    
	int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
        
	if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
        bucketSizes[0] = 0;
		int bid = blockIdx.x;
        int tid = threadIdx.x;
		int arraySize = prefixSizeArray[blockIdx.x+1] - prefixSizeArray[blockIdx.x];
	    int leftOvers = arraySize%numOfBuckets;
        int jmpFac = arraySize/numOfBuckets;
        int gArrayStart = prefixSizeArray[blockIdx.x] + tid*jmpFac;
        int gArrayEnd = (tid==(numOfBuckets-1))?(gArrayStart + jmpFac+leftOvers):(gArrayStart + jmpFac);
        int lArrayStart = tid*jmpFac;
        __shared__ int myInput [maxSize];

        int arrBegin = prefixSizeArray[bid];
        int arrEnd = prefixSizeArray[bid+1];
		    
        int splitterIndexSt = ((blockIdx.x == 0)? 0 : (prefixBucketsArray[blockIdx.x-1]+1));//blockIdx.x*(BUCKETS+1);
        int splitterIndexEd = splitterIndexSt + numOfBuckets+1;
        __shared__ mType splitters[maxBuckets+2];
//copy my array in shared memory in parallel
        for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
            myInput[i] = data[j];
         }
        __syncthreads(); 
        int j = 0;
        for(int i = splitterIndexSt; i < splitterIndexEd; i++){
           splitters[j] = splittersArray[i];
           j++;
        }
       
	    getBuckets<mType, maxSize>(data, splitters, arrBegin, arrEnd, bucketSizes, myInput, prefixBucketsArray, totArrays);

	}
}		
		
		
		
//sorting kernel	
template <typename mType, int maxSize>	
__global__ void sortBuckets(mType *buckets, int *bucketsSize, int *prefixBucketsArray, int *prefixSizeArray, int totArrays){
	int numOfBuckets = (blockIdx.x == 0) ? prefixBucketsArray[0] : (prefixBucketsArray[blockIdx.x] - prefixBucketsArray[blockIdx.x-1]);
     
	
       if(blockIdx.x < totArrays && threadIdx.x < numOfBuckets){
		int sizeOffset = (blockIdx.x == 0) ? (0+threadIdx.x) : (prefixBucketsArray[blockIdx.x-1] + threadIdx.x); 
        int sizeOffsetBlock = (blockIdx.x == 0) ? (0) : (prefixBucketsArray[blockIdx.x-1]);
       // int bid = blockIdx.x;
        int tid = threadIdx.x;
		int arraySize = prefixSizeArray[blockIdx.x+1] - prefixSizeArray[blockIdx.x];
	    int leftOvers = arraySize%numOfBuckets;
        int jmpFac = arraySize/numOfBuckets;
        int gArrayStart = prefixSizeArray[blockIdx.x] + tid*jmpFac;
        int gArrayEnd = (tid==(numOfBuckets-1))?(gArrayStart + jmpFac+leftOvers):(gArrayStart + jmpFac);
        int lArrayStart = tid*jmpFac;
        //int lArrayEnd = (tid==(BUCKETS-1))?(lArrayStart + jmpFac+leftOvers):(lArrayStart + jmpFac);

        __shared__ mType myArray [maxSize];
        int indexSum = 0;
    

          for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
                 myArray[i] = buckets[j];
           
        }
        __syncthreads();
        //prefix sum for bucket sizes of current array
        
     	  for(int j = 0; j < threadIdx.x; j++)
              indexSum += bucketsSize[sizeOffsetBlock+j+1];

 
          insertionSort(myArray, indexSum,indexSum + bucketsSize[sizeOffset+1]);
          __syncthreads();


           for(int i=lArrayStart,j=gArrayStart;j<gArrayEnd;i++,j++){
                 buckets[j] = myArray[i];
           
        }
     __syncthreads(); 
}


}

template <typename mType, int maxSize>		
void gpuArraySort(dataArrays<mType> newData, int *prefixSum, int flag, int totArrays){
	
	int *d_prefixSum, *d_numOfBuckets;
	if(flag == 1){
		int *d_prefixSumDo;
		hipMalloc((void**) &d_prefixSumDo, (totArrays+1)*sizeof(int));
		hipMemcpy(d_prefixSumDo, prefixSum, sizeof(int)*(1+totArrays), hipMemcpyHostToDevice);
   
        //casting device ptr to thrust dev_ptr
        thrust::device_ptr<int> prefixDo = thrust::device_pointer_cast(d_prefixSumDo);
        //performing prefixSum using thrust
        thrust::exclusive_scan(prefixDo, prefixDo + totArrays, prefixDo);
		prefixDo[totArrays] = prefixDo[totArrays-1] + prefixSum[totArrays-1];
		d_prefixSum = d_prefixSumDo;
	}
	
    mType *d_inputData, *d_splitters, *d_bucketSizes;
    //creating events
	hipEvent_t start, stop;
    hipEventCreate(&start);
    hipEventCreate(&stop);
   int *h_totalBuckets = new int[1];
   size_t size_heap, size_stack;
    //setting stack size limit
   hipDeviceSetLimit(hipLimitStackSize,10240);
   hipDeviceGetLimit(&size_heap, hipLimitMallocHeapSize);
   hipDeviceGetLimit(&size_stack, hipLimitStackSize);
   
   
   // allocating device memory for prefixSum, num Of buckets, splitters, bucketSizes
   hipMalloc((void**) &d_prefixSum, (totArrays+1)*sizeof(int));
   //copying prefixSums to Device
   hipMemcpy(d_prefixSum, prefixSum, sizeof(int)*(1+totArrays), hipMemcpyHostToDevice);

   //allocating device memory for inputData
   thrust::device_vector<mType> inData (newData.dataList.size());
   thrust::copy(newData.dataList.begin(), newData.dataList.end(), inData.begin());
   hipDeviceSynchronize();

   clock_t start2, end2;
   double cpu_time_used;

   hipEventRecord(start);
   start2 = clock();
   // allocating device memory for prefixSum, num Of buckets, splitters, bucketSizes
   hipMalloc((void**) &d_numOfBuckets, (totArrays)*sizeof(int));
   
   //clculating buckets on GPU
   getNumOfBuckets<<<totArrays,1>>>(d_prefixSum, d_numOfBuckets, totArrays);
   
   //casting device ptr to thrust dev_ptr
   thrust::device_ptr<int> prefixNumBuckets = thrust::device_pointer_cast(d_numOfBuckets);
   //performing prefixSum using thrust
   thrust::inclusive_scan(prefixNumBuckets, prefixNumBuckets + totArrays, prefixNumBuckets);
   //copying total number of buckets back
   checkCuda(hipMemcpy(h_totalBuckets, d_numOfBuckets+(totArrays-1), sizeof(int), hipMemcpyDeviceToHost));
   //allocating device memory for splitters
   hipMalloc((void**) &d_splitters, (totArrays+h_totalBuckets[0])*sizeof(mType));
   
   hipMalloc((void**) &d_bucketSizes, (1+h_totalBuckets[0])*sizeof(int));
   
   
    d_inputData = thrust::raw_pointer_cast(&inData[0]);
   
    cout<< "**** Generating Splitters ****" << endl;
     
    splitterKer<mType, maxSize><<<totArrays, 1>>>(d_inputData, d_splitters, d_prefixSum, d_numOfBuckets, totArrays);
    
	cout<< "**** Splitters Generated****" << endl;
	
	cout<< "**** Generating Buckets ****" << endl;
	
    bucketKernel<mType, maxSize><<<totArrays, maxBuckets>>>(d_inputData, d_splitters, d_prefixSum, d_numOfBuckets, d_bucketSizes, totArrays);
   
    cout<< "**** Buckets Generated ****" << endl;
	
	cout<< "**** Sorting Buckets ****" << endl;
    sortBuckets<mType, maxSize><<<totArrays, maxBuckets>>>(d_inputData, d_bucketSizes,d_numOfBuckets, d_prefixSum, totArrays);
     
	cout<< "**** Writing Back ****" << endl; 
	
    hipEventRecord(stop);
	
	hipEventSynchronize(stop);
    float milliseconds = 0;
    hipEventElapsedTime(&milliseconds, start, stop);
    hipDeviceSynchronize();
    end2 = clock();
    cpu_time_used = ((double) (end2 - start2)) * 1000 / CLOCKS_PER_SEC;
    mType *h_bucketedData = new mType[newData.prefixArray[totArrays]];
    checkCuda(hipMemcpy(h_bucketedData, d_inputData, (newData.prefixArray[totArrays])*sizeof(mType), hipMemcpyDeviceToHost));
   
   // cout<<"printing bucketed array:";
  //  for(int i = newData.prefixArray[totArrays-2]; i < newData.prefixArray[totArrays-1]; i++)
	//   cout<< i<<":"<<h_bucketedData[i]<<endl;
   cout<< "**** Arrays Sorted, Time Taken : "<< milliseconds<<"****" << endl;
   cout<< "**** Arrays Sorted, Time Taken (on CPU) : "<< cpu_time_used<<"****" << endl;
    
	
}

dataArrays<int> readFile(int size , int totArrays){
    string fn = "../Futhark/list_" + to_string(size) + "_" + to_string(totArrays) + ".in";
    ifstream file(fn);

    if(!file.good()){
      cout<< "Error reading file " << fn << "\n";
      throw "Can't read file";
    }

    dataArrays<int> data;
    int cur;

    for(int a = 0; a < totArrays*size && file.good(); a++){
        int c = file.peek();
        if(isdigit(c) ){
           file >> cur;
           data.dataList.push_back(cur);
        }
        else {
            file.get();
            a--;
        }
    }

    if(!file.good()){
      cout<< "Error reading file " << fn << "\n";
      throw "Can't read file";
    }

    data.prefixArray = new int[totArrays+1]; //exclusive prefix scan
    int prefix = 0;
    for(int a =0; a <= totArrays; a++)
    {
        data.prefixArray[a] = prefix;
        prefix += size;
    }


    file.close();
    return data;
}
		
int main(int argc, char *argv[]){
   if(argc != 3){
       printf("Need 2 arguments\n");
       return 0;
   }
   int totArrays = stoi(argv[1]);
   int size = stoi(argv[2]);
   printf("%i arrays of length %i\n", totArrays, size);
   int maxSize = size;
   int minSize = size;

   //generate data
   //dataArrays<int> newData = (dataGen<int>(totArrays,maxSize,minSize));
   
   //read data
   dataArrays<int> newData;
   try {
     newData = readFile(size, totArrays);
   } catch (const char* msg) {
     cerr << msg << endl;
     return 0;
   }

   int *prefixSum = newData.prefixArray;
   //calling GPU-ArraySort
   if(maxSize == 100){
       gpuArraySort<int, 100>(newData, prefixSum, 0, totArrays);
   } else if(maxSize == 1000)
   {
       gpuArraySort<int, 1000>(newData, prefixSum, 0, totArrays);
   } else if(maxSize == 10000)
   {
       gpuArraySort<int, 10000>(newData, prefixSum, 0, totArrays);
   } else
   {
       printf("Incorrect arraysizes, we only support 100, 1000 and 10000\n");
   }


	
}

	.text
	.file	"GPU-ArraySort-2-0.hip"
                                        # Start of file scope inline assembly
	.globl	_ZSt21ios_base_library_initv

                                        # End of file scope inline assembly
	.globl	_Z30__device_stub__getNumOfBucketsPiS_i # -- Begin function _Z30__device_stub__getNumOfBucketsPiS_i
	.type	_Z30__device_stub__getNumOfBucketsPiS_i,@function
_Z30__device_stub__getNumOfBucketsPiS_i: # @_Z30__device_stub__getNumOfBucketsPiS_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), %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	$_Z15getNumOfBucketsPiS_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_end0:
	.size	_Z30__device_stub__getNumOfBucketsPiS_i, .Lfunc_end0-_Z30__device_stub__getNumOfBucketsPiS_i
	.cfi_endproc
                                        # -- End function
	.globl	_Z8readFileii                   # -- Begin function _Z8readFileii
	.type	_Z8readFileii,@function
_Z8readFileii:                          # @_Z8readFileii
.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	%r13
	.cfi_def_cfa_offset 40
	pushq	%r12
	.cfi_def_cfa_offset 48
	pushq	%rbx
	.cfi_def_cfa_offset 56
	subq	$696, %rsp                      # imm = 0x2B8
	.cfi_def_cfa_offset 752
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
                                        # kill: def $edx killed $edx def $rdx
	movq	%rdx, 8(%rsp)                   # 8-byte Spill
	movl	%esi, %ebp
	movq	%rdi, %rbx
	movl	%esi, %r15d
	negl	%r15d
	cmovsl	%esi, %r15d
	movl	$1, %r12d
	cmpl	$10, %r15d
	jb	.LBB1_9
# %bb.1:                                # %.lr.ph.i.i.preheader
	movl	$4, %r12d
	movl	$3518437209, %eax               # imm = 0xD1B71759
	movl	%r15d, %ecx
.LBB1_2:                                # %.lr.ph.i.i
                                        # =>This Inner Loop Header: Depth=1
	cmpl	$99, %ecx
	jbe	.LBB1_7
# %bb.3:                                #   in Loop: Header=BB1_2 Depth=1
	cmpl	$999, %ecx                      # imm = 0x3E7
	jbe	.LBB1_8
# %bb.4:                                #   in Loop: Header=BB1_2 Depth=1
	cmpl	$10000, %ecx                    # imm = 0x2710
	jb	.LBB1_9
# %bb.5:                                #   in Loop: Header=BB1_2 Depth=1
	movl	%ecx, %edx
	imulq	%rax, %rdx
	shrq	$45, %rdx
	addl	$4, %r12d
	cmpl	$99999, %ecx                    # imm = 0x1869F
	movl	%edx, %ecx
	ja	.LBB1_2
# %bb.6:                                # %_ZNSt8__detail14__to_chars_lenIjEEjT_i.exit.i.loopexit
	addl	$-3, %r12d
	jmp	.LBB1_9
.LBB1_7:
	addl	$-2, %r12d
	jmp	.LBB1_9
.LBB1_8:
	decl	%r12d
.LBB1_9:                                # %_ZNSt8__detail14__to_chars_lenIjEEjT_i.exit.i
	movl	%ebp, %r14d
	shrl	$31, %r14d
	leal	(%r12,%r14), %esi
	leaq	160(%rsp), %rax
	movq	%rax, -16(%rax)
.Ltmp0:
	leaq	144(%rsp), %rdi
	movl	$45, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructEmc
.Ltmp1:
# %bb.10:                               # %_ZNSt7__cxx119to_stringEi.exit
	movl	%r14d, %edi
	leaq	144(%rsp), %r13
	addq	(%r13), %rdi
	movl	%r12d, %esi
	movl	%r15d, %edx
	callq	_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_
.Ltmp3:
	movl	$.L.str, %ecx
	movl	$16, %r8d
	movq	%r13, %rdi
	xorl	%esi, %esi
	xorl	%edx, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7replaceEmmPKcm
.Ltmp4:
# %bb.11:                               # %.noexc
	movq	%rax, %r15
	leaq	128(%rsp), %rdi
	movq	%rdi, -16(%rdi)
	movq	(%rax), %rsi
	movq	%rax, %r14
	addq	$16, %r14
	cmpq	%r14, %rsi
	je	.LBB1_13
# %bb.12:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	movq	%rsi, 112(%rsp)
	movq	16(%r15), %rax
	movq	%rax, 128(%rsp)
	movq	8(%r15), %r12
	jmp	.LBB1_14
.LBB1_13:
	movq	8(%r15), %r12
	leaq	1(%r12), %rdx
	callq	memcpy@PLT
.LBB1_14:
	leaq	112(%rsp), %rdi
	movq	%r12, 8(%rdi)
	movq	%r14, (%r15)
	movq	$0, 8(%r15)
	movb	$0, 16(%r15)
.Ltmp6:
	movl	$.L.str.1, %esi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp7:
# %bb.15:                               # %.noexc40
	movq	%rax, %r15
	leaq	96(%rsp), %rdi
	movq	%rdi, -16(%rdi)
	movq	(%rax), %rsi
	movq	%rax, %r14
	addq	$16, %r14
	cmpq	%r14, %rsi
	je	.LBB1_17
# %bb.16:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i37
	movq	%rdi, %r13
	movq	%rsi, 80(%rsp)
	movq	16(%r15), %rax
	movq	%rax, 96(%rsp)
	movq	8(%r15), %r12
	jmp	.LBB1_18
.LBB1_17:
	movq	8(%r15), %r12
	leaq	1(%r12), %rdx
	movq	%rdi, %r13
	callq	memcpy@PLT
.LBB1_18:
	movq	%r12, 88(%rsp)
	movq	%r14, (%r15)
	movq	$0, 8(%r15)
	movb	$0, 16(%r15)
	movq	8(%rsp), %rax                   # 8-byte Reload
	movl	%eax, %r15d
	negl	%r15d
	cmovsl	%eax, %r15d
	movl	$1, %r12d
	cmpl	$10, %r15d
	jb	.LBB1_27
# %bb.19:                               # %.lr.ph.i.i41.preheader
	movl	$4, %r12d
	movl	$3518437209, %eax               # imm = 0xD1B71759
	movl	%r15d, %ecx
.LBB1_20:                               # %.lr.ph.i.i41
                                        # =>This Inner Loop Header: Depth=1
	cmpl	$99, %ecx
	jbe	.LBB1_25
# %bb.21:                               #   in Loop: Header=BB1_20 Depth=1
	cmpl	$999, %ecx                      # imm = 0x3E7
	jbe	.LBB1_26
# %bb.22:                               #   in Loop: Header=BB1_20 Depth=1
	cmpl	$10000, %ecx                    # imm = 0x2710
	jb	.LBB1_27
# %bb.23:                               #   in Loop: Header=BB1_20 Depth=1
	movl	%ecx, %edx
	imulq	%rax, %rdx
	shrq	$45, %rdx
	addl	$4, %r12d
	cmpl	$99999, %ecx                    # imm = 0x1869F
	movl	%edx, %ecx
	ja	.LBB1_20
# %bb.24:                               # %_ZNSt8__detail14__to_chars_lenIjEEjT_i.exit.i44.loopexit
	addl	$-3, %r12d
	jmp	.LBB1_27
.LBB1_25:
	addl	$-2, %r12d
	jmp	.LBB1_27
.LBB1_26:
	decl	%r12d
.LBB1_27:                               # %_ZNSt8__detail14__to_chars_lenIjEEjT_i.exit.i44
	movq	8(%rsp), %r14                   # 8-byte Reload
                                        # kill: def $r14d killed $r14d killed $r14 def $r14
	shrl	$31, %r14d
	leal	(%r12,%r14), %esi
	leaq	64(%rsp), %rax
	movq	%rax, -16(%rax)
.Ltmp9:
	leaq	48(%rsp), %rdi
	movl	$45, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructEmc
.Ltmp10:
# %bb.28:                               # %_ZNSt7__cxx119to_stringEi.exit47
	movl	%r14d, %edi
	addq	48(%rsp), %rdi
	movl	%r12d, %esi
	movl	%r15d, %edx
	callq	_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_
	movq	80(%rsp), %rcx
	movq	88(%rsp), %r8
	movq	56(%rsp), %rdx
	leaq	(%rdx,%r8), %rax
	movl	$15, %edi
	cmpq	%r13, %rcx
	je	.LBB1_30
# %bb.29:                               # %_ZNSt7__cxx119to_stringEi.exit47
	movq	96(%rsp), %rdi
.LBB1_30:                               # %_ZNSt7__cxx119to_stringEi.exit47
	movq	48(%rsp), %rsi
	cmpq	%rdi, %rax
	jbe	.LBB1_34
# %bb.31:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8capacityEv.exit12.i
	movl	$15, %edi
	leaq	64(%rsp), %r9
	cmpq	%r9, %rsi
	je	.LBB1_33
# %bb.32:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8capacityEv.exit12.i
	movq	64(%rsp), %rdi
.LBB1_33:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8capacityEv.exit12.i
	cmpq	%rdi, %rax
	jbe	.LBB1_35
.LBB1_34:
.Ltmp14:
	leaq	80(%rsp), %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm
.Ltmp15:
	jmp	.LBB1_36
.LBB1_35:                               # %.critedge.i
.Ltmp12:
	leaq	48(%rsp), %rdi
	xorl	%esi, %esi
	xorl	%edx, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7replaceEmmPKcm
.Ltmp13:
.LBB1_36:                               # %.noexc50
	movq	%rax, %r15
	leaq	192(%rsp), %rdi
	movq	%rdi, -16(%rdi)
	movq	(%rax), %rsi
	leaq	16(%rax), %r14
	cmpq	%r14, %rsi
	je	.LBB1_38
# %bb.37:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i13.i
	movq	%rsi, 176(%rsp)
	movq	(%r14), %rax
	movq	%rax, 192(%rsp)
	jmp	.LBB1_39
.LBB1_38:
	movq	8(%r15), %rdx
	incq	%rdx
	callq	memcpy@PLT
.LBB1_39:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2EOS4_.exit14.i
	movq	%r15, %rax
	addq	$8, %rax
	movq	8(%r15), %rcx
	movq	%rcx, 184(%rsp)
	movq	%r14, (%r15)
	movq	$0, (%rax)
	movb	$0, (%r14)
.Ltmp17:
	leaq	176(%rsp), %rdi
	movl	$.L.str.2, %esi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp18:
# %bb.40:                               # %.noexc56
	movq	%rax, %r12
	leaq	32(%rsp), %rdi
	movq	%rdi, -16(%rdi)
	movq	(%rax), %rsi
	movq	%rax, %r14
	addq	$16, %r14
	cmpq	%r14, %rsi
	je	.LBB1_42
# %bb.41:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i52
	movq	%rsi, 16(%rsp)
	movq	16(%r12), %rax
	movq	%rax, 32(%rsp)
	movq	8(%r12), %r15
	jmp	.LBB1_43
.LBB1_42:
	movq	8(%r12), %r15
	leaq	1(%r15), %rdx
	callq	memcpy@PLT
.LBB1_43:
	movq	%r15, 24(%rsp)
	movq	%r14, (%r12)
	movq	$0, 8(%r12)
	movb	$0, 16(%r12)
	leaq	192(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB1_45
# %bb.44:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i58
	callq	_ZdlPv
.LBB1_45:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	48(%rsp), %rdi
	leaq	64(%rsp), %rax
	cmpq	%rax, %rdi
	movq	8(%rsp), %r14                   # 8-byte Reload
	je	.LBB1_47
# %bb.46:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i59
	callq	_ZdlPv
.LBB1_47:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit61
	movq	80(%rsp), %rdi
	cmpq	%r13, %rdi
	je	.LBB1_49
# %bb.48:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i62
	callq	_ZdlPv
.LBB1_49:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit64
	movq	112(%rsp), %rdi
	leaq	128(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB1_51
# %bb.50:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i65
	callq	_ZdlPv
.LBB1_51:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit67
	movq	144(%rsp), %rdi
	leaq	160(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB1_53
# %bb.52:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i68
	callq	_ZdlPv
.LBB1_53:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit70
.Ltmp20:
	leaq	176(%rsp), %rdi
	leaq	16(%rsp), %rsi
	movl	$8, %edx
	callq	_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode
.Ltmp21:
# %bb.54:
	movq	176(%rsp), %rax
	movq	-24(%rax), %rcx
	cmpl	$0, 208(%rsp,%rcx)
	jne	.LBB1_77
# %bb.55:
	xorps	%xmm0, %xmm0
	movups	%xmm0, (%rbx)
	movq	$0, 16(%rbx)
	movl	%r14d, %r15d
	imull	%ebp, %r15d
	testl	%r15d, %r15d
	jle	.LBB1_68
# %bb.56:                               # %.lr.ph
	xorl	%r14d, %r14d
	leaq	176(%rsp), %r12
	leaq	80(%rsp), %r13
.LBB1_57:                               # =>This Inner Loop Header: Depth=1
	movq	176(%rsp), %rax
	movq	-24(%rax), %rcx
	cmpl	$0, 208(%rsp,%rcx)
	jne	.LBB1_68
# %bb.58:                               #   in Loop: Header=BB1_57 Depth=1
.Ltmp32:
	movq	%r12, %rdi
	callq	_ZNSi4peekEv
.Ltmp33:
# %bb.59:                               #   in Loop: Header=BB1_57 Depth=1
	addl	$-48, %eax
	cmpl	$9, %eax
	ja	.LBB1_63
# %bb.60:                               #   in Loop: Header=BB1_57 Depth=1
.Ltmp36:
	movq	%r12, %rdi
	movq	%r13, %rsi
	callq	_ZNSirsERi
.Ltmp37:
# %bb.61:                               #   in Loop: Header=BB1_57 Depth=1
	movq	8(%rbx), %rsi
	cmpq	16(%rbx), %rsi
	je	.LBB1_65
# %bb.62:                               #   in Loop: Header=BB1_57 Depth=1
	movl	80(%rsp), %eax
	movl	%eax, (%rsi)
	addq	$4, %rsi
	movq	%rsi, 8(%rbx)
	jmp	.LBB1_66
.LBB1_63:                               #   in Loop: Header=BB1_57 Depth=1
.Ltmp34:
	movq	%r12, %rdi
	callq	_ZNSi3getEv
.Ltmp35:
# %bb.64:                               #   in Loop: Header=BB1_57 Depth=1
	decl	%r14d
	jmp	.LBB1_66
.LBB1_65:                               #   in Loop: Header=BB1_57 Depth=1
.Ltmp38:
	movq	%rbx, %rdi
	movq	%r13, %rdx
	callq	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
.Ltmp39:
.LBB1_66:                               # %_ZNSt6vectorIiSaIiEE9push_backERKi.exit
                                        #   in Loop: Header=BB1_57 Depth=1
	incl	%r14d
	cmpl	%r15d, %r14d
	jl	.LBB1_57
# %bb.67:                               # %_ZNSt6vectorIiSaIiEE9push_backERKi.exit..critedge.loopexit_crit_edge
	movq	176(%rsp), %rax
.LBB1_68:                               # %.critedge
	movq	-24(%rax), %rax
	cmpl	$0, 208(%rsp,%rax)
	jne	.LBB1_81
# %bb.69:
	movq	8(%rsp), %r15                   # 8-byte Reload
	leal	1(%r15), %r14d
	leaq	(,%r14,4), %rax
	cmpl	$-1, %r15d
	movq	$-1, %rdi
	cmovgeq	%rax, %rdi
.Ltmp49:
	callq	_Znam
.Ltmp50:
# %bb.70:
	movq	%rax, 24(%rbx)
	testl	%r15d, %r15d
	js	.LBB1_73
# %bb.71:                               # %.lr.ph116.preheader
	xorl	%ecx, %ecx
	xorl	%edx, %edx
.LBB1_72:                               # %.lr.ph116
                                        # =>This Inner Loop Header: Depth=1
	movl	%edx, (%rax,%rcx,4)
	addl	%ebp, %edx
	incq	%rcx
	cmpq	%rcx, %r14
	jne	.LBB1_72
.LBB1_73:                               # %._crit_edge
.Ltmp52:
	leaq	176(%rsp), %rdi
	callq	_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv
.Ltmp53:
# %bb.74:
	leaq	176(%rsp), %rdi
	callq	_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev
	movq	16(%rsp), %rdi
	leaq	32(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB1_76
# %bb.75:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i98
	callq	_ZdlPv
.LBB1_76:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit100
	movq	%rbx, %rax
	addq	$696, %rsp                      # imm = 0x2B8
	.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
.LBB1_77:
	.cfi_def_cfa_offset 752
.Ltmp23:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.3, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp24:
# %bb.78:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit
	movq	16(%rsp), %rsi
	movq	24(%rsp), %rdx
.Ltmp25:
	movl	$_ZSt4cout, %edi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp26:
# %bb.79:                               # %_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE.exit
.Ltmp27:
	movl	$.L.str.4, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp28:
# %bb.80:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit74
	movl	$8, %edi
	callq	__cxa_allocate_exception
	movq	$.L.str.5, (%rax)
.Ltmp29:
	movl	$_ZTIPKc, %esi
	movq	%rax, %rdi
	xorl	%edx, %edx
	callq	__cxa_throw
.Ltmp30:
	jmp	.LBB1_85
.LBB1_81:
.Ltmp41:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.3, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp42:
# %bb.82:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit93
	movq	16(%rsp), %rsi
	movq	24(%rsp), %rdx
.Ltmp43:
	movl	$_ZSt4cout, %edi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp44:
# %bb.83:                               # %_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE.exit95
.Ltmp45:
	movl	$.L.str.4, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp46:
# %bb.84:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit97
	movl	$8, %edi
	callq	__cxa_allocate_exception
	movq	$.L.str.5, (%rax)
.Ltmp47:
	movl	$_ZTIPKc, %esi
	movq	%rax, %rdi
	xorl	%edx, %edx
	callq	__cxa_throw
.Ltmp48:
.LBB1_85:
.LBB1_86:
.Ltmp54:
	jmp	.LBB1_106
.LBB1_87:
.Ltmp31:
	movq	%rax, %r14
	jmp	.LBB1_108
.LBB1_88:
.Ltmp22:
	movq	%rax, %r14
	jmp	.LBB1_109
.LBB1_89:
.Ltmp19:
	movq	%rax, %r14
	leaq	192(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB1_92
# %bb.90:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i75
	callq	_ZdlPv
	jmp	.LBB1_92
.LBB1_91:
.Ltmp16:
	movq	%rax, %r14
.LBB1_92:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit77
	movq	48(%rsp), %rdi
	leaq	64(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB1_94
# %bb.93:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i78
	callq	_ZdlPv
.LBB1_94:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit80
	movq	80(%rsp), %rdi
	cmpq	%r13, %rdi
	je	.LBB1_98
# %bb.95:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i81
	callq	_ZdlPv
	jmp	.LBB1_98
.LBB1_96:
.Ltmp11:
	jmp	.LBB1_103
.LBB1_97:
.Ltmp8:
	movq	%rax, %r14
.LBB1_98:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit83
	movq	112(%rsp), %rdi
	leaq	128(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB1_101
# %bb.99:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i84
	callq	_ZdlPv
	jmp	.LBB1_101
.LBB1_100:
.Ltmp5:
	movq	%rax, %r14
.LBB1_101:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit86
	movq	144(%rsp), %rdi
	leaq	160(%rsp), %rax
	jmp	.LBB1_110
.LBB1_102:
.Ltmp2:
.LBB1_103:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.LBB1_104:
.Ltmp51:
	jmp	.LBB1_106
.LBB1_105:
.Ltmp40:
.LBB1_106:
	movq	%rax, %r14
	movq	(%rbx), %rdi
	testq	%rdi, %rdi
	je	.LBB1_108
# %bb.107:
	callq	_ZdlPv
.LBB1_108:                              # %_ZN10dataArraysIiED2Ev.exit
	leaq	176(%rsp), %rdi
	callq	_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev
.LBB1_109:
	movq	16(%rsp), %rdi
	leaq	32(%rsp), %rax
.LBB1_110:
	cmpq	%rax, %rdi
	je	.LBB1_112
# %bb.111:                              # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i101
	callq	_ZdlPv
.LBB1_112:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit103
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end1:
	.size	_Z8readFileii, .Lfunc_end1-_Z8readFileii
	.cfi_endproc
	.section	.gcc_except_table,"a",@progbits
	.p2align	2, 0x0
GCC_except_table1:
.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 .Ltmp0-.Lfunc_begin0           # >> Call Site 1 <<
	.uleb128 .Ltmp1-.Ltmp0                  #   Call between .Ltmp0 and .Ltmp1
	.uleb128 .Ltmp2-.Lfunc_begin0           #     jumps to .Ltmp2
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp3-.Lfunc_begin0           # >> Call Site 2 <<
	.uleb128 .Ltmp4-.Ltmp3                  #   Call between .Ltmp3 and .Ltmp4
	.uleb128 .Ltmp5-.Lfunc_begin0           #     jumps to .Ltmp5
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp4-.Lfunc_begin0           # >> Call Site 3 <<
	.uleb128 .Ltmp6-.Ltmp4                  #   Call between .Ltmp4 and .Ltmp6
	.byte	0                               #     has no landing pad
	.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 .Ltmp7-.Lfunc_begin0           # >> Call Site 5 <<
	.uleb128 .Ltmp9-.Ltmp7                  #   Call between .Ltmp7 and .Ltmp9
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp9-.Lfunc_begin0           # >> Call Site 6 <<
	.uleb128 .Ltmp10-.Ltmp9                 #   Call between .Ltmp9 and .Ltmp10
	.uleb128 .Ltmp11-.Lfunc_begin0          #     jumps to .Ltmp11
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp14-.Lfunc_begin0          # >> Call Site 7 <<
	.uleb128 .Ltmp13-.Ltmp14                #   Call between .Ltmp14 and .Ltmp13
	.uleb128 .Ltmp16-.Lfunc_begin0          #     jumps to .Ltmp16
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp13-.Lfunc_begin0          # >> Call Site 8 <<
	.uleb128 .Ltmp17-.Ltmp13                #   Call between .Ltmp13 and .Ltmp17
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp17-.Lfunc_begin0          # >> Call Site 9 <<
	.uleb128 .Ltmp18-.Ltmp17                #   Call between .Ltmp17 and .Ltmp18
	.uleb128 .Ltmp19-.Lfunc_begin0          #     jumps to .Ltmp19
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp18-.Lfunc_begin0          # >> Call Site 10 <<
	.uleb128 .Ltmp20-.Ltmp18                #   Call between .Ltmp18 and .Ltmp20
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp20-.Lfunc_begin0          # >> Call Site 11 <<
	.uleb128 .Ltmp21-.Ltmp20                #   Call between .Ltmp20 and .Ltmp21
	.uleb128 .Ltmp22-.Lfunc_begin0          #     jumps to .Ltmp22
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp32-.Lfunc_begin0          # >> Call Site 12 <<
	.uleb128 .Ltmp39-.Ltmp32                #   Call between .Ltmp32 and .Ltmp39
	.uleb128 .Ltmp40-.Lfunc_begin0          #     jumps to .Ltmp40
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp49-.Lfunc_begin0          # >> Call Site 13 <<
	.uleb128 .Ltmp50-.Ltmp49                #   Call between .Ltmp49 and .Ltmp50
	.uleb128 .Ltmp51-.Lfunc_begin0          #     jumps to .Ltmp51
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp52-.Lfunc_begin0          # >> Call Site 14 <<
	.uleb128 .Ltmp53-.Ltmp52                #   Call between .Ltmp52 and .Ltmp53
	.uleb128 .Ltmp54-.Lfunc_begin0          #     jumps to .Ltmp54
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp23-.Lfunc_begin0          # >> Call Site 15 <<
	.uleb128 .Ltmp28-.Ltmp23                #   Call between .Ltmp23 and .Ltmp28
	.uleb128 .Ltmp31-.Lfunc_begin0          #     jumps to .Ltmp31
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp28-.Lfunc_begin0          # >> Call Site 16 <<
	.uleb128 .Ltmp29-.Ltmp28                #   Call between .Ltmp28 and .Ltmp29
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp29-.Lfunc_begin0          # >> Call Site 17 <<
	.uleb128 .Ltmp30-.Ltmp29                #   Call between .Ltmp29 and .Ltmp30
	.uleb128 .Ltmp31-.Lfunc_begin0          #     jumps to .Ltmp31
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp41-.Lfunc_begin0          # >> Call Site 18 <<
	.uleb128 .Ltmp46-.Ltmp41                #   Call between .Ltmp41 and .Ltmp46
	.uleb128 .Ltmp51-.Lfunc_begin0          #     jumps to .Ltmp51
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp46-.Lfunc_begin0          # >> Call Site 19 <<
	.uleb128 .Ltmp47-.Ltmp46                #   Call between .Ltmp46 and .Ltmp47
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp47-.Lfunc_begin0          # >> Call Site 20 <<
	.uleb128 .Ltmp48-.Ltmp47                #   Call between .Ltmp47 and .Ltmp48
	.uleb128 .Ltmp51-.Lfunc_begin0          #     jumps to .Ltmp51
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp48-.Lfunc_begin0          # >> Call Site 21 <<
	.uleb128 .Lfunc_end1-.Ltmp48            #   Call between .Ltmp48 and .Lfunc_end1
	.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
	.text
	.globl	main                            # -- Begin function main
	.type	main,@function
main:                                   # @main
.Lfunc_begin1:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception1
# %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	$184, %rsp
	.cfi_def_cfa_offset 240
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	cmpl	$3, %edi
	jne	.LBB2_24
# %bb.1:
	movq	%rsi, %r15
	movq	8(%rsi), %rsi
.Ltmp55:
	leaq	16(%rsp), %rdi
	leaq	11(%rsp), %rdx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
.Ltmp56:
# %bb.2:
	movq	16(%rsp), %r12
	callq	__errno_location
	movq	%rax, %r14
	movl	(%rax), %ebp
	movl	$0, (%rax)
	leaq	48(%rsp), %r13
	movq	%r12, %rdi
	movq	%r13, %rsi
	movl	$10, %edx
	callq	__isoc23_strtol
	cmpq	%r12, (%r13)
	je	.LBB2_37
# %bb.3:
	movq	%rax, %rbx
	movslq	%ebx, %rax
	cmpq	%rbx, %rax
	jne	.LBB2_39
# %bb.4:
	movl	(%r14), %eax
	cmpl	$34, %eax
	je	.LBB2_39
# %bb.5:
	testl	%eax, %eax
	jne	.LBB2_7
# %bb.6:
	movl	%ebp, (%r14)
.LBB2_7:
	leaq	32(%rsp), %rbp
	movq	-16(%rbp), %rdi
	cmpq	%rbp, %rdi
	je	.LBB2_9
# %bb.8:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB2_9:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	16(%r15), %rsi
.Ltmp58:
	leaq	16(%rsp), %rdi
	leaq	11(%rsp), %rdx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
.Ltmp59:
# %bb.10:
	movq	16(%rsp), %r12
	movl	(%r14), %eax
	movl	%eax, 12(%rsp)                  # 4-byte Spill
	movl	$0, (%r14)
	leaq	48(%rsp), %r13
	movq	%r12, %rdi
	movq	%r13, %rsi
	movl	$10, %edx
	callq	__isoc23_strtol
	cmpq	%r12, (%r13)
	je	.LBB2_41
# %bb.11:
	movq	%rax, %r15
	movabsq	$-4294967296, %rax              # imm = 0xFFFFFFFF00000000
	leaq	-2147483648(%r15), %rcx
	cmpq	%rax, %rcx
	jb	.LBB2_43
# %bb.12:
	movl	(%r14), %eax
	cmpl	$34, %eax
	je	.LBB2_43
# %bb.13:
	testl	%eax, %eax
	jne	.LBB2_15
# %bb.14:
	movl	12(%rsp), %eax                  # 4-byte Reload
	movl	%eax, (%r14)
.LBB2_15:
	movq	16(%rsp), %rdi
	cmpq	%rbp, %rdi
	je	.LBB2_17
# %bb.16:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i44
	callq	_ZdlPv
.LBB2_17:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit46
	movl	$.L.str.7, %edi
	movl	%ebx, %esi
	movl	%r15d, %edx
	xorl	%eax, %eax
	callq	printf
	xorps	%xmm0, %xmm0
	movaps	%xmm0, 16(%rsp)
	movq	$0, 32(%rsp)
.Ltmp61:
	leaq	48(%rsp), %rdi
	movl	%r15d, %esi
	movl	%ebx, %edx
	callq	_Z8readFileii
.Ltmp62:
# %bb.18:                               # %_ZN10dataArraysIiED2Ev.exit
	movq	48(%rsp), %rax
	movq	%rax, 16(%rsp)
	movups	56(%rsp), %xmm0
	movups	%xmm0, 24(%rsp)
	movq	72(%rsp), %r14
	movq	%r14, 40(%rsp)
	cmpl	$100, %r15d
	je	.LBB2_28
# %bb.19:                               # %_ZN10dataArraysIiED2Ev.exit
	cmpl	$1000, %r15d                    # imm = 0x3E8
	je	.LBB2_25
# %bb.20:                               # %_ZN10dataArraysIiED2Ev.exit
	cmpl	$10000, %r15d                   # imm = 0x2710
	jne	.LBB2_33
# %bb.21:
.Ltmp69:
	leaq	88(%rsp), %rdi
	leaq	16(%rsp), %rsi
	callq	_ZNSt6vectorIiSaIiEEC2ERKS1_
.Ltmp70:
# %bb.22:
	movq	40(%rsp), %rax
	leaq	88(%rsp), %rdi
	movq	%rax, 24(%rdi)
.Ltmp71:
	movq	%r14, %rsi
	xorl	%edx, %edx
	movl	%ebx, %ecx
	callq	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
.Ltmp72:
# %bb.23:
	movq	88(%rsp), %rdi
	jmp	.LBB2_31
.LBB2_24:
	movl	$.Lstr.1, %edi
	callq	puts@PLT
	jmp	.LBB2_36
.LBB2_25:
.Ltmp74:
	leaq	120(%rsp), %rdi
	leaq	16(%rsp), %rsi
	callq	_ZNSt6vectorIiSaIiEEC2ERKS1_
.Ltmp75:
# %bb.26:
	movq	40(%rsp), %rax
	leaq	120(%rsp), %rdi
	movq	%rax, 24(%rdi)
.Ltmp76:
	movq	%r14, %rsi
	xorl	%edx, %edx
	movl	%ebx, %ecx
	callq	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
.Ltmp77:
# %bb.27:
	movq	120(%rsp), %rdi
	jmp	.LBB2_31
.LBB2_28:
.Ltmp79:
	leaq	152(%rsp), %rdi
	leaq	16(%rsp), %rsi
	callq	_ZNSt6vectorIiSaIiEEC2ERKS1_
.Ltmp80:
# %bb.29:
	movq	40(%rsp), %rax
	leaq	152(%rsp), %rdi
	movq	%rax, 24(%rdi)
.Ltmp82:
	movq	%r14, %rsi
	xorl	%edx, %edx
	movl	%ebx, %ecx
	callq	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
.Ltmp83:
# %bb.30:
	movq	152(%rsp), %rdi
.LBB2_31:
	testq	%rdi, %rdi
	je	.LBB2_34
# %bb.32:
	callq	_ZdlPv
	jmp	.LBB2_34
.LBB2_33:
	movl	$.Lstr, %edi
	callq	puts@PLT
.LBB2_34:                               # %_ZN10dataArraysIiED2Ev.exit54
	movq	16(%rsp), %rdi
	testq	%rdi, %rdi
	je	.LBB2_36
# %bb.35:
	callq	_ZdlPv
.LBB2_36:
	xorl	%eax, %eax
	addq	$184, %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
.LBB2_37:
	.cfi_def_cfa_offset 240
.Ltmp92:
	movl	$.L.str.9, %edi
	callq	_ZSt24__throw_invalid_argumentPKc
.Ltmp93:
# %bb.38:
.LBB2_39:                               # %.critedge.i.i
.Ltmp90:
	movl	$.L.str.9, %edi
	callq	_ZSt20__throw_out_of_rangePKc
.Ltmp91:
# %bb.40:
.LBB2_41:
.Ltmp87:
	movl	$.L.str.9, %edi
	callq	_ZSt24__throw_invalid_argumentPKc
.Ltmp88:
# %bb.42:
.LBB2_43:                               # %.critedge.i.i39
.Ltmp85:
	movl	$.L.str.9, %edi
	callq	_ZSt20__throw_out_of_rangePKc
.Ltmp86:
# %bb.44:
.LBB2_45:
.Ltmp73:
	movq	%rax, %rbx
	movq	88(%rsp), %rdi
	jmp	.LBB2_48
.LBB2_46:
.Ltmp84:
	movq	%rax, %rbx
	movq	152(%rsp), %rdi
	jmp	.LBB2_48
.LBB2_47:
.Ltmp78:
	movq	%rax, %rbx
	movq	120(%rsp), %rdi
.LBB2_48:
	testq	%rdi, %rdi
	je	.LBB2_51
# %bb.49:
	callq	_ZdlPv
	jmp	.LBB2_51
.LBB2_50:
.Ltmp81:
	movq	%rax, %rbx
.LBB2_51:
	movq	16(%rsp), %rdi
	testq	%rdi, %rdi
	jne	.LBB2_66
	jmp	.LBB2_67
.LBB2_52:
.Ltmp63:
	movq	%rax, %rbx
	cmpl	$1, %edx
	jne	.LBB2_51
# %bb.53:
	movq	%rbx, %rdi
	callq	__cxa_begin_catch
.Ltmp64:
	movl	$_ZSt4cerr, %edi
	movq	%rax, %rsi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
.Ltmp65:
# %bb.54:
.Ltmp66:
	movq	%rax, %rdi
	callq	_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
.Ltmp67:
# %bb.55:                               # %_ZNSolsEPFRSoS_E.exit
	callq	__cxa_end_catch
	jmp	.LBB2_34
.LBB2_56:
.Ltmp68:
	movq	%rax, %rbx
	callq	__cxa_end_catch
	jmp	.LBB2_51
.LBB2_57:
.Ltmp60:
	jmp	.LBB2_59
.LBB2_58:
.Ltmp57:
.LBB2_59:
	movq	%rax, %rbx
	jmp	.LBB2_67
.LBB2_60:
.Ltmp89:
	movq	%rax, %rbx
	cmpl	$0, (%r14)
	jne	.LBB2_62
# %bb.61:
	movl	12(%rsp), %eax                  # 4-byte Reload
	movl	%eax, (%r14)
.LBB2_62:                               # %_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev.exit.i.i40
	movq	16(%rsp), %rdi
	cmpq	%rbp, %rdi
	jne	.LBB2_66
	jmp	.LBB2_67
.LBB2_63:
.Ltmp94:
	movq	%rax, %rbx
	cmpl	$0, (%r14)
	jne	.LBB2_65
# %bb.64:
	movl	%ebp, (%r14)
.LBB2_65:                               # %_ZZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_EN11_Save_errnoD2Ev.exit.i.i
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB2_67
.LBB2_66:
	callq	_ZdlPv
.LBB2_67:
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end2:
	.size	main, .Lfunc_end2-main
	.cfi_endproc
	.section	.gcc_except_table,"a",@progbits
	.p2align	2, 0x0
GCC_except_table2:
.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 .Ltmp55-.Lfunc_begin1          # >> Call Site 1 <<
	.uleb128 .Ltmp56-.Ltmp55                #   Call between .Ltmp55 and .Ltmp56
	.uleb128 .Ltmp57-.Lfunc_begin1          #     jumps to .Ltmp57
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp58-.Lfunc_begin1          # >> Call Site 2 <<
	.uleb128 .Ltmp59-.Ltmp58                #   Call between .Ltmp58 and .Ltmp59
	.uleb128 .Ltmp60-.Lfunc_begin1          #     jumps to .Ltmp60
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp61-.Lfunc_begin1          # >> Call Site 3 <<
	.uleb128 .Ltmp62-.Ltmp61                #   Call between .Ltmp61 and .Ltmp62
	.uleb128 .Ltmp63-.Lfunc_begin1          #     jumps to .Ltmp63
	.byte	3                               #   On action: 2
	.uleb128 .Ltmp69-.Lfunc_begin1          # >> Call Site 4 <<
	.uleb128 .Ltmp70-.Ltmp69                #   Call between .Ltmp69 and .Ltmp70
	.uleb128 .Ltmp81-.Lfunc_begin1          #     jumps to .Ltmp81
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp71-.Lfunc_begin1          # >> Call Site 5 <<
	.uleb128 .Ltmp72-.Ltmp71                #   Call between .Ltmp71 and .Ltmp72
	.uleb128 .Ltmp73-.Lfunc_begin1          #     jumps to .Ltmp73
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp74-.Lfunc_begin1          # >> Call Site 6 <<
	.uleb128 .Ltmp75-.Ltmp74                #   Call between .Ltmp74 and .Ltmp75
	.uleb128 .Ltmp81-.Lfunc_begin1          #     jumps to .Ltmp81
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp76-.Lfunc_begin1          # >> Call Site 7 <<
	.uleb128 .Ltmp77-.Ltmp76                #   Call between .Ltmp76 and .Ltmp77
	.uleb128 .Ltmp78-.Lfunc_begin1          #     jumps to .Ltmp78
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp79-.Lfunc_begin1          # >> Call Site 8 <<
	.uleb128 .Ltmp80-.Ltmp79                #   Call between .Ltmp79 and .Ltmp80
	.uleb128 .Ltmp81-.Lfunc_begin1          #     jumps to .Ltmp81
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp82-.Lfunc_begin1          # >> Call Site 9 <<
	.uleb128 .Ltmp83-.Ltmp82                #   Call between .Ltmp82 and .Ltmp83
	.uleb128 .Ltmp84-.Lfunc_begin1          #     jumps to .Ltmp84
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp92-.Lfunc_begin1          # >> Call Site 10 <<
	.uleb128 .Ltmp91-.Ltmp92                #   Call between .Ltmp92 and .Ltmp91
	.uleb128 .Ltmp94-.Lfunc_begin1          #     jumps to .Ltmp94
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp87-.Lfunc_begin1          # >> Call Site 11 <<
	.uleb128 .Ltmp86-.Ltmp87                #   Call between .Ltmp87 and .Ltmp86
	.uleb128 .Ltmp89-.Lfunc_begin1          #     jumps to .Ltmp89
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp86-.Lfunc_begin1          # >> Call Site 12 <<
	.uleb128 .Ltmp64-.Ltmp86                #   Call between .Ltmp86 and .Ltmp64
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp64-.Lfunc_begin1          # >> Call Site 13 <<
	.uleb128 .Ltmp67-.Ltmp64                #   Call between .Ltmp64 and .Ltmp67
	.uleb128 .Ltmp68-.Lfunc_begin1          #     jumps to .Ltmp68
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp67-.Lfunc_begin1          # >> Call Site 14 <<
	.uleb128 .Lfunc_end2-.Ltmp67            #   Call between .Ltmp67 and .Lfunc_end2
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end1:
	.byte	0                               # >> Action Record 1 <<
                                        #   Cleanup
	.byte	0                               #   No further actions
	.byte	1                               # >> Action Record 2 <<
                                        #   Catch TypeInfo 1
	.byte	125                             #   Continue to action 1
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	_ZTIPKc                         # TypeInfo 1
.Lttbase1:
	.p2align	2, 0x0
                                        # -- 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	.LBB3_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
.LBB3_1:
	.cfi_def_cfa_offset 32
	movl	$.L.str.12, %edi
	callq	_ZSt19__throw_logic_errorPKc
.Lfunc_end3:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_, .Lfunc_end3-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
	.cfi_endproc
                                        # -- End function
	.section	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
.LCPI4_0:
	.quad	0x408f400000000000              # double 1000
.LCPI4_1:
	.quad	0x412e848000000000              # double 1.0E+6
	.section	.text._Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,@function
_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii: # @_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
.Lfunc_begin2:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception2
# %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	$136, %rsp
	.cfi_def_cfa_offset 192
	.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, %r14
	movq	%rdi, 64(%rsp)                  # 8-byte Spill
	movl	%ecx, 60(%rsp)                  # 4-byte Spill
	movslq	%ecx, %r13
	cmpl	$1, %edx
	jne	.LBB4_2
# %bb.1:
	leaq	(,%r13,4), %rbp
	leaq	4(,%r13,4), %r12
	leaq	80(%rsp), %r15
	movq	%r15, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%r15), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	(%r15), %rbx
	leaq	(%rbx,%r13,4), %rax
	movq	%rax, 112(%rsp)                 # 8-byte Spill
	negq	%rbp
	sarq	$2, %rbp
	negq	%rbp
	leaq	24(%rsp), %rdi
	movq	%rbx, %rsi
	movq	%rbp, %rdx
	movq	%rbx, %rcx
	xorl	%r8d, %r8d
	callq	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
	leaq	(%rbx,%r13,4), %rdx
	addq	$-4, %rdx
	leaq	48(%rsp), %rsi
	leaq	24(%rsp), %rbx
	movl	$1, %ecx
	xorl	%edi, %edi
	movq	%rbx, %r8
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
	movl	(%rbx), %eax
	movq	%r13, %rbp
	addl	-4(%r14,%r13,4), %eax
	movl	%eax, (%rbx)
	leaq	24(%rsp), %rdx
	movl	$1, %ecx
	xorl	%edi, %edi
	xorl	%esi, %esi
	movq	112(%rsp), %r8                  # 8-byte Reload
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
	movq	(%r15), %rax
	movq	%rax, 32(%rsp)
	jmp	.LBB4_3
.LBB4_2:                                # %._crit_edge
	movq	%r13, %rbp
	leaq	4(,%r13,4), %r12
.LBB4_3:
	leaq	72(%rsp), %rdi
	callq	hipEventCreate
	leaq	40(%rsp), %rdi
	callq	hipEventCreate
	movl	$4, %edi
	callq	_Znam
	movq	%rax, %r15
	movl	$10240, %esi                    # imm = 0x2800
	xorl	%edi, %edi
	callq	hipDeviceSetLimit
	leaq	128(%rsp), %rdi
	movl	$2, %esi
	callq	hipDeviceGetLimit
	leaq	120(%rsp), %rdi
	xorl	%esi, %esi
	callq	hipDeviceGetLimit
	leaq	32(%rsp), %rbx
	movq	%rbx, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%rbx), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	64(%rsp), %r14                  # 8-byte Reload
	movq	8(%r14), %rsi
	subq	(%r14), %rsi
	sarq	$2, %rsi
	leaq	80(%rsp), %rbx
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
	movq	(%r14), %rdx
	movq	8(%r14), %rcx
	movq	8(%rbx), %r8
	subq	%rdx, %rcx
	sarq	$2, %rcx
.Ltmp95:
	leaq	8(%rsp), %rdi
	leaq	15(%rsp), %rsi
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
.Ltmp96:
# %bb.4:
.Ltmp97:
	callq	hipDeviceSynchronize
.Ltmp98:
# %bb.5:
	movq	72(%rsp), %rdi
.Ltmp100:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp101:
	movq	%rbp, %rbx
	movl	60(%rsp), %ebp                  # 4-byte Reload
# %bb.6:
	callq	clock
	movq	%rax, %r14
	leaq	(,%rbx,4), %r13
.Ltmp102:
	leaq	16(%rsp), %rdi
	movq	%r13, %rsi
	callq	hipMalloc
.Ltmp103:
# %bb.7:
	movl	%ebp, %r12d
	btsq	$32, %r12
.Ltmp104:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp105:
# %bb.8:
	testl	%eax, %eax
	jne	.LBB4_10
# %bb.9:
	movq	32(%rsp), %rdi
	movq	16(%rsp), %rsi
.Ltmp106:
	movl	%ebp, %edx
	callq	_Z30__device_stub__getNumOfBucketsPiS_i
.Ltmp107:
.LBB4_10:
	movq	16(%rsp), %rcx
	negq	%r13
	sarq	$2, %r13
	negq	%r13
.Ltmp109:
	leaq	8(%rsp), %rdi
	movq	%rcx, %rsi
	movq	%r13, %rdx
	callq	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
.Ltmp110:
# %bb.11:
	movq	16(%rsp), %rax
	leaq	(%rax,%rbx,4), %rsi
	addq	$-4, %rsi
.Ltmp111:
	movl	$4, %edx
	movq	%r15, %rdi
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp112:
# %bb.12:
	movslq	(%r15), %rsi
	addq	%rbx, %rsi
	shlq	$2, %rsi
.Ltmp113:
	leaq	24(%rsp), %rdi
	callq	hipMalloc
.Ltmp114:
# %bb.13:
	movslq	(%r15), %rax
	leaq	4(,%rax,4), %rsi
.Ltmp115:
	leaq	48(%rsp), %rdi
	callq	hipMalloc
.Ltmp116:
# %bb.14:
	movq	88(%rsp), %r15
.Ltmp117:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.15, %esi
	movl	$30, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp118:
# %bb.15:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp119:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp120:
# %bb.16:                               # %.noexc
.Ltmp121:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp122:
# %bb.17:                               # %.noexc93
.Ltmp123:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp124:
# %bb.18:                               # %_ZNSolsEPFRSoS_E.exit
.Ltmp125:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp126:
# %bb.19:
	testl	%eax, %eax
	jne	.LBB4_21
# %bb.20:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
.Ltmp127:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i
.Ltmp128:
.LBB4_21:
.Ltmp129:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.16, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp130:
# %bb.22:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit76
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp131:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp132:
# %bb.23:                               # %.noexc95
.Ltmp133:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp134:
# %bb.24:                               # %.noexc96
.Ltmp135:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp136:
# %bb.25:                               # %_ZNSolsEPFRSoS_E.exit77
.Ltmp137:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.17, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp138:
# %bb.26:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit78
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp139:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp140:
# %bb.27:                               # %.noexc99
.Ltmp141:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp142:
# %bb.28:                               # %.noexc100
.Ltmp143:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp144:
# %bb.29:                               # %_ZNSolsEPFRSoS_E.exit79
.Ltmp145:
	movabsq	$4294967301, %rdx               # imm = 0x100000005
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp146:
# %bb.30:
	testl	%eax, %eax
	jne	.LBB4_32
# %bb.31:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
	movq	48(%rsp), %r8
.Ltmp147:
	movq	%r15, %rdi
	movl	%ebp, %r9d
	callq	_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
.Ltmp148:
.LBB4_32:
.Ltmp149:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.18, %esi
	movl	$27, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp150:
# %bb.33:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit80
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp151:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp152:
# %bb.34:                               # %.noexc103
.Ltmp153:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp154:
# %bb.35:                               # %.noexc104
.Ltmp155:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp156:
# %bb.36:                               # %_ZNSolsEPFRSoS_E.exit81
.Ltmp157:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.19, %esi
	movl	$25, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp158:
# %bb.37:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit82
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp159:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp160:
# %bb.38:                               # %.noexc107
.Ltmp161:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp162:
# %bb.39:                               # %.noexc108
.Ltmp163:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp164:
# %bb.40:                               # %_ZNSolsEPFRSoS_E.exit83
.Ltmp165:
	movabsq	$4294967301, %rdx               # imm = 0x100000005
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp166:
# %bb.41:
	testl	%eax, %eax
	jne	.LBB4_43
# %bb.42:
	movq	48(%rsp), %rsi
	movq	16(%rsp), %rdx
	movq	32(%rsp), %rcx
.Ltmp167:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i
.Ltmp168:
.LBB4_43:
.Ltmp169:
	movl	$_ZSt4cout, %r12d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.20, %esi
	movl	$22, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp170:
# %bb.44:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit84
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r12
.Ltmp171:
	movq	%r12, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp172:
# %bb.45:                               # %.noexc111
.Ltmp173:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp174:
# %bb.46:                               # %.noexc112
.Ltmp175:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp176:
# %bb.47:                               # %_ZNSolsEPFRSoS_E.exit85
	movq	40(%rsp), %rdi
.Ltmp177:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp178:
# %bb.48:
	movq	40(%rsp), %rdi
.Ltmp179:
	callq	hipEventSynchronize
.Ltmp180:
# %bb.49:
	leaq	8(%rsp), %rdi
	movl	$0, (%rdi)
	movq	72(%rsp), %rsi
	movq	40(%rsp), %rdx
.Ltmp182:
	callq	hipEventElapsedTime
.Ltmp183:
# %bb.50:
.Ltmp184:
	callq	hipDeviceSynchronize
.Ltmp185:
# %bb.51:
	callq	clock
	movq	%rax, %r12
	movq	64(%rsp), %rax                  # 8-byte Reload
	movq	24(%rax), %rax
	movslq	(%rax,%rbx,4), %rax
	leaq	(,%rax,4), %rbx
	testq	%rax, %rax
	movq	$-1, %rdi
	cmovnsq	%rbx, %rdi
.Ltmp187:
	callq	_Znam
.Ltmp188:
# %bb.52:
.Ltmp189:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%rbx, %rdx
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp190:
# %bb.53:
.Ltmp191:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.21, %esi
	movl	$33, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp192:
# %bb.54:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit86
	cvtss2sd	8(%rsp), %xmm0
.Ltmp193:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp194:
# %bb.55:                               # %_ZNSolsEf.exit
.Ltmp195:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp196:
# %bb.56:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit87
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp197:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp198:
# %bb.57:                               # %.noexc115
.Ltmp199:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp200:
# %bb.58:                               # %.noexc116
.Ltmp201:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp202:
# %bb.59:                               # %_ZNSolsEPFRSoS_E.exit88
.Ltmp203:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.23, %esi
	movl	$42, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp204:
# %bb.60:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit89
.Ltmp205:
	subq	%r14, %r12
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r12, %xmm0
	mulsd	.LCPI4_0(%rip), %xmm0
	divsd	.LCPI4_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp206:
# %bb.61:                               # %_ZNSolsEd.exit
.Ltmp207:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp208:
# %bb.62:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit90
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp209:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp210:
# %bb.63:                               # %.noexc119
.Ltmp211:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp212:
# %bb.64:                               # %.noexc120
.Ltmp213:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp214:
# %bb.65:                               # %_ZNSolsEPFRSoS_E.exit91
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB4_67
# %bb.66:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp219:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp220:
.LBB4_67:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit
	addq	$136, %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
.LBB4_68:
	.cfi_def_cfa_offset 192
.Ltmp221:
	jmp	.LBB4_69
.LBB4_70:
.Ltmp186:
	jmp	.LBB4_75
.LBB4_71:
.Ltmp99:
	jmp	.LBB4_75
.LBB4_72:
.Ltmp108:
	jmp	.LBB4_75
.LBB4_73:
.Ltmp215:
	jmp	.LBB4_75
.LBB4_74:
.Ltmp181:
.LBB4_75:
	movq	%rax, %rbx
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB4_77
# %bb.76:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp216:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp217:
.LBB4_77:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit92
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.LBB4_78:
.Ltmp218:
.LBB4_69:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end4:
	.size	_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii, .Lfunc_end4-_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii
	.cfi_endproc
	.section	.gcc_except_table._Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,"aG",@progbits,_Z12gpuArraySortIiLi100EEv10dataArraysIT_EPiii,comdat
	.p2align	2, 0x0
GCC_except_table4:
.Lexception2:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase2-.Lttbaseref2
.Lttbaseref2:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end2-.Lcst_begin2
.Lcst_begin2:
	.uleb128 .Lfunc_begin2-.Lfunc_begin2    # >> Call Site 1 <<
	.uleb128 .Ltmp95-.Lfunc_begin2          #   Call between .Lfunc_begin2 and .Ltmp95
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp95-.Lfunc_begin2          # >> Call Site 2 <<
	.uleb128 .Ltmp98-.Ltmp95                #   Call between .Ltmp95 and .Ltmp98
	.uleb128 .Ltmp99-.Lfunc_begin2          #     jumps to .Ltmp99
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp100-.Lfunc_begin2         # >> Call Site 3 <<
	.uleb128 .Ltmp107-.Ltmp100              #   Call between .Ltmp100 and .Ltmp107
	.uleb128 .Ltmp108-.Lfunc_begin2         #     jumps to .Ltmp108
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp109-.Lfunc_begin2         # >> Call Site 4 <<
	.uleb128 .Ltmp180-.Ltmp109              #   Call between .Ltmp109 and .Ltmp180
	.uleb128 .Ltmp181-.Lfunc_begin2         #     jumps to .Ltmp181
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp182-.Lfunc_begin2         # >> Call Site 5 <<
	.uleb128 .Ltmp185-.Ltmp182              #   Call between .Ltmp182 and .Ltmp185
	.uleb128 .Ltmp186-.Lfunc_begin2         #     jumps to .Ltmp186
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp187-.Lfunc_begin2         # >> Call Site 6 <<
	.uleb128 .Ltmp214-.Ltmp187              #   Call between .Ltmp187 and .Ltmp214
	.uleb128 .Ltmp215-.Lfunc_begin2         #     jumps to .Ltmp215
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp219-.Lfunc_begin2         # >> Call Site 7 <<
	.uleb128 .Ltmp220-.Ltmp219              #   Call between .Ltmp219 and .Ltmp220
	.uleb128 .Ltmp221-.Lfunc_begin2         #     jumps to .Ltmp221
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp216-.Lfunc_begin2         # >> Call Site 8 <<
	.uleb128 .Ltmp217-.Ltmp216              #   Call between .Ltmp216 and .Ltmp217
	.uleb128 .Ltmp218-.Lfunc_begin2         #     jumps to .Ltmp218
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp217-.Lfunc_begin2         # >> Call Site 9 <<
	.uleb128 .Lfunc_end4-.Ltmp217           #   Call between .Ltmp217 and .Lfunc_end4
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end2:
	.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	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
.LCPI5_0:
	.quad	0x408f400000000000              # double 1000
.LCPI5_1:
	.quad	0x412e848000000000              # double 1.0E+6
	.section	.text._Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,@function
_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii: # @_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
.Lfunc_begin3:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception3
# %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	$136, %rsp
	.cfi_def_cfa_offset 192
	.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, %r14
	movq	%rdi, 64(%rsp)                  # 8-byte Spill
	movl	%ecx, 60(%rsp)                  # 4-byte Spill
	movslq	%ecx, %r13
	cmpl	$1, %edx
	jne	.LBB5_2
# %bb.1:
	leaq	(,%r13,4), %rbp
	leaq	4(,%r13,4), %r12
	leaq	80(%rsp), %r15
	movq	%r15, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%r15), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	(%r15), %rbx
	leaq	(%rbx,%r13,4), %rax
	movq	%rax, 112(%rsp)                 # 8-byte Spill
	negq	%rbp
	sarq	$2, %rbp
	negq	%rbp
	leaq	24(%rsp), %rdi
	movq	%rbx, %rsi
	movq	%rbp, %rdx
	movq	%rbx, %rcx
	xorl	%r8d, %r8d
	callq	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
	leaq	(%rbx,%r13,4), %rdx
	addq	$-4, %rdx
	leaq	48(%rsp), %rsi
	leaq	24(%rsp), %rbx
	movl	$1, %ecx
	xorl	%edi, %edi
	movq	%rbx, %r8
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
	movl	(%rbx), %eax
	movq	%r13, %rbp
	addl	-4(%r14,%r13,4), %eax
	movl	%eax, (%rbx)
	leaq	24(%rsp), %rdx
	movl	$1, %ecx
	xorl	%edi, %edi
	xorl	%esi, %esi
	movq	112(%rsp), %r8                  # 8-byte Reload
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
	movq	(%r15), %rax
	movq	%rax, 32(%rsp)
	jmp	.LBB5_3
.LBB5_2:                                # %._crit_edge
	movq	%r13, %rbp
	leaq	4(,%r13,4), %r12
.LBB5_3:
	leaq	72(%rsp), %rdi
	callq	hipEventCreate
	leaq	40(%rsp), %rdi
	callq	hipEventCreate
	movl	$4, %edi
	callq	_Znam
	movq	%rax, %r15
	movl	$10240, %esi                    # imm = 0x2800
	xorl	%edi, %edi
	callq	hipDeviceSetLimit
	leaq	128(%rsp), %rdi
	movl	$2, %esi
	callq	hipDeviceGetLimit
	leaq	120(%rsp), %rdi
	xorl	%esi, %esi
	callq	hipDeviceGetLimit
	leaq	32(%rsp), %rbx
	movq	%rbx, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%rbx), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	64(%rsp), %r14                  # 8-byte Reload
	movq	8(%r14), %rsi
	subq	(%r14), %rsi
	sarq	$2, %rsi
	leaq	80(%rsp), %rbx
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
	movq	(%r14), %rdx
	movq	8(%r14), %rcx
	movq	8(%rbx), %r8
	subq	%rdx, %rcx
	sarq	$2, %rcx
.Ltmp222:
	leaq	8(%rsp), %rdi
	leaq	15(%rsp), %rsi
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
.Ltmp223:
# %bb.4:
.Ltmp224:
	callq	hipDeviceSynchronize
.Ltmp225:
# %bb.5:
	movq	72(%rsp), %rdi
.Ltmp227:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp228:
	movq	%rbp, %rbx
	movl	60(%rsp), %ebp                  # 4-byte Reload
# %bb.6:
	callq	clock
	movq	%rax, %r14
	leaq	(,%rbx,4), %r13
.Ltmp229:
	leaq	16(%rsp), %rdi
	movq	%r13, %rsi
	callq	hipMalloc
.Ltmp230:
# %bb.7:
	movl	%ebp, %r12d
	btsq	$32, %r12
.Ltmp231:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp232:
# %bb.8:
	testl	%eax, %eax
	jne	.LBB5_10
# %bb.9:
	movq	32(%rsp), %rdi
	movq	16(%rsp), %rsi
.Ltmp233:
	movl	%ebp, %edx
	callq	_Z30__device_stub__getNumOfBucketsPiS_i
.Ltmp234:
.LBB5_10:
	movq	16(%rsp), %rcx
	negq	%r13
	sarq	$2, %r13
	negq	%r13
.Ltmp236:
	leaq	8(%rsp), %rdi
	movq	%rcx, %rsi
	movq	%r13, %rdx
	callq	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
.Ltmp237:
# %bb.11:
	movq	16(%rsp), %rax
	leaq	(%rax,%rbx,4), %rsi
	addq	$-4, %rsi
.Ltmp238:
	movl	$4, %edx
	movq	%r15, %rdi
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp239:
# %bb.12:
	movslq	(%r15), %rsi
	addq	%rbx, %rsi
	shlq	$2, %rsi
.Ltmp240:
	leaq	24(%rsp), %rdi
	callq	hipMalloc
.Ltmp241:
# %bb.13:
	movslq	(%r15), %rax
	leaq	4(,%rax,4), %rsi
.Ltmp242:
	leaq	48(%rsp), %rdi
	callq	hipMalloc
.Ltmp243:
# %bb.14:
	movq	88(%rsp), %r15
.Ltmp244:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.15, %esi
	movl	$30, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp245:
# %bb.15:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp246:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp247:
# %bb.16:                               # %.noexc
.Ltmp248:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp249:
# %bb.17:                               # %.noexc93
.Ltmp250:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp251:
# %bb.18:                               # %_ZNSolsEPFRSoS_E.exit
.Ltmp252:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp253:
# %bb.19:
	testl	%eax, %eax
	jne	.LBB5_21
# %bb.20:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
.Ltmp254:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i
.Ltmp255:
.LBB5_21:
.Ltmp256:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.16, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp257:
# %bb.22:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit76
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp258:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp259:
# %bb.23:                               # %.noexc95
.Ltmp260:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp261:
# %bb.24:                               # %.noexc96
.Ltmp262:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp263:
# %bb.25:                               # %_ZNSolsEPFRSoS_E.exit77
.Ltmp264:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.17, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp265:
# %bb.26:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit78
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp266:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp267:
# %bb.27:                               # %.noexc99
.Ltmp268:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp269:
# %bb.28:                               # %.noexc100
.Ltmp270:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp271:
# %bb.29:                               # %_ZNSolsEPFRSoS_E.exit79
.Ltmp272:
	movabsq	$4294967346, %rdx               # imm = 0x100000032
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp273:
# %bb.30:
	testl	%eax, %eax
	jne	.LBB5_32
# %bb.31:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
	movq	48(%rsp), %r8
.Ltmp274:
	movq	%r15, %rdi
	movl	%ebp, %r9d
	callq	_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
.Ltmp275:
.LBB5_32:
.Ltmp276:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.18, %esi
	movl	$27, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp277:
# %bb.33:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit80
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp278:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp279:
# %bb.34:                               # %.noexc103
.Ltmp280:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp281:
# %bb.35:                               # %.noexc104
.Ltmp282:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp283:
# %bb.36:                               # %_ZNSolsEPFRSoS_E.exit81
.Ltmp284:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.19, %esi
	movl	$25, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp285:
# %bb.37:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit82
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp286:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp287:
# %bb.38:                               # %.noexc107
.Ltmp288:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp289:
# %bb.39:                               # %.noexc108
.Ltmp290:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp291:
# %bb.40:                               # %_ZNSolsEPFRSoS_E.exit83
.Ltmp292:
	movabsq	$4294967346, %rdx               # imm = 0x100000032
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp293:
# %bb.41:
	testl	%eax, %eax
	jne	.LBB5_43
# %bb.42:
	movq	48(%rsp), %rsi
	movq	16(%rsp), %rdx
	movq	32(%rsp), %rcx
.Ltmp294:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i
.Ltmp295:
.LBB5_43:
.Ltmp296:
	movl	$_ZSt4cout, %r12d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.20, %esi
	movl	$22, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp297:
# %bb.44:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit84
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r12
.Ltmp298:
	movq	%r12, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp299:
# %bb.45:                               # %.noexc111
.Ltmp300:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp301:
# %bb.46:                               # %.noexc112
.Ltmp302:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp303:
# %bb.47:                               # %_ZNSolsEPFRSoS_E.exit85
	movq	40(%rsp), %rdi
.Ltmp304:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp305:
# %bb.48:
	movq	40(%rsp), %rdi
.Ltmp306:
	callq	hipEventSynchronize
.Ltmp307:
# %bb.49:
	leaq	8(%rsp), %rdi
	movl	$0, (%rdi)
	movq	72(%rsp), %rsi
	movq	40(%rsp), %rdx
.Ltmp309:
	callq	hipEventElapsedTime
.Ltmp310:
# %bb.50:
.Ltmp311:
	callq	hipDeviceSynchronize
.Ltmp312:
# %bb.51:
	callq	clock
	movq	%rax, %r12
	movq	64(%rsp), %rax                  # 8-byte Reload
	movq	24(%rax), %rax
	movslq	(%rax,%rbx,4), %rax
	leaq	(,%rax,4), %rbx
	testq	%rax, %rax
	movq	$-1, %rdi
	cmovnsq	%rbx, %rdi
.Ltmp314:
	callq	_Znam
.Ltmp315:
# %bb.52:
.Ltmp316:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%rbx, %rdx
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp317:
# %bb.53:
.Ltmp318:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.21, %esi
	movl	$33, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp319:
# %bb.54:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit86
	cvtss2sd	8(%rsp), %xmm0
.Ltmp320:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp321:
# %bb.55:                               # %_ZNSolsEf.exit
.Ltmp322:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp323:
# %bb.56:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit87
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp324:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp325:
# %bb.57:                               # %.noexc115
.Ltmp326:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp327:
# %bb.58:                               # %.noexc116
.Ltmp328:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp329:
# %bb.59:                               # %_ZNSolsEPFRSoS_E.exit88
.Ltmp330:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.23, %esi
	movl	$42, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp331:
# %bb.60:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit89
.Ltmp332:
	subq	%r14, %r12
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r12, %xmm0
	mulsd	.LCPI5_0(%rip), %xmm0
	divsd	.LCPI5_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp333:
# %bb.61:                               # %_ZNSolsEd.exit
.Ltmp334:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp335:
# %bb.62:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit90
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp336:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp337:
# %bb.63:                               # %.noexc119
.Ltmp338:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp339:
# %bb.64:                               # %.noexc120
.Ltmp340:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp341:
# %bb.65:                               # %_ZNSolsEPFRSoS_E.exit91
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB5_67
# %bb.66:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp346:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp347:
.LBB5_67:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit
	addq	$136, %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
.LBB5_68:
	.cfi_def_cfa_offset 192
.Ltmp348:
	jmp	.LBB5_69
.LBB5_70:
.Ltmp313:
	jmp	.LBB5_75
.LBB5_71:
.Ltmp226:
	jmp	.LBB5_75
.LBB5_72:
.Ltmp235:
	jmp	.LBB5_75
.LBB5_73:
.Ltmp342:
	jmp	.LBB5_75
.LBB5_74:
.Ltmp308:
.LBB5_75:
	movq	%rax, %rbx
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB5_77
# %bb.76:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp343:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp344:
.LBB5_77:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit92
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.LBB5_78:
.Ltmp345:
.LBB5_69:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end5:
	.size	_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii, .Lfunc_end5-_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii
	.cfi_endproc
	.section	.gcc_except_table._Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,"aG",@progbits,_Z12gpuArraySortIiLi1000EEv10dataArraysIT_EPiii,comdat
	.p2align	2, 0x0
GCC_except_table5:
.Lexception3:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase3-.Lttbaseref3
.Lttbaseref3:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end3-.Lcst_begin3
.Lcst_begin3:
	.uleb128 .Lfunc_begin3-.Lfunc_begin3    # >> Call Site 1 <<
	.uleb128 .Ltmp222-.Lfunc_begin3         #   Call between .Lfunc_begin3 and .Ltmp222
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp222-.Lfunc_begin3         # >> Call Site 2 <<
	.uleb128 .Ltmp225-.Ltmp222              #   Call between .Ltmp222 and .Ltmp225
	.uleb128 .Ltmp226-.Lfunc_begin3         #     jumps to .Ltmp226
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp227-.Lfunc_begin3         # >> Call Site 3 <<
	.uleb128 .Ltmp234-.Ltmp227              #   Call between .Ltmp227 and .Ltmp234
	.uleb128 .Ltmp235-.Lfunc_begin3         #     jumps to .Ltmp235
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp236-.Lfunc_begin3         # >> Call Site 4 <<
	.uleb128 .Ltmp307-.Ltmp236              #   Call between .Ltmp236 and .Ltmp307
	.uleb128 .Ltmp308-.Lfunc_begin3         #     jumps to .Ltmp308
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp309-.Lfunc_begin3         # >> Call Site 5 <<
	.uleb128 .Ltmp312-.Ltmp309              #   Call between .Ltmp309 and .Ltmp312
	.uleb128 .Ltmp313-.Lfunc_begin3         #     jumps to .Ltmp313
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp314-.Lfunc_begin3         # >> Call Site 6 <<
	.uleb128 .Ltmp341-.Ltmp314              #   Call between .Ltmp314 and .Ltmp341
	.uleb128 .Ltmp342-.Lfunc_begin3         #     jumps to .Ltmp342
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp346-.Lfunc_begin3         # >> Call Site 7 <<
	.uleb128 .Ltmp347-.Ltmp346              #   Call between .Ltmp346 and .Ltmp347
	.uleb128 .Ltmp348-.Lfunc_begin3         #     jumps to .Ltmp348
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp343-.Lfunc_begin3         # >> Call Site 8 <<
	.uleb128 .Ltmp344-.Ltmp343              #   Call between .Ltmp343 and .Ltmp344
	.uleb128 .Ltmp345-.Lfunc_begin3         #     jumps to .Ltmp345
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp344-.Lfunc_begin3         # >> Call Site 9 <<
	.uleb128 .Lfunc_end5-.Ltmp344           #   Call between .Ltmp344 and .Lfunc_end5
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end3:
	.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	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
.LCPI6_0:
	.quad	0x408f400000000000              # double 1000
.LCPI6_1:
	.quad	0x412e848000000000              # double 1.0E+6
	.section	.text._Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,"axG",@progbits,_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,comdat
	.weak	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
	.type	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,@function
_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii: # @_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
.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
	subq	$136, %rsp
	.cfi_def_cfa_offset 192
	.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, %r14
	movq	%rdi, 64(%rsp)                  # 8-byte Spill
	movl	%ecx, 60(%rsp)                  # 4-byte Spill
	movslq	%ecx, %r13
	cmpl	$1, %edx
	jne	.LBB6_2
# %bb.1:
	leaq	(,%r13,4), %rbp
	leaq	4(,%r13,4), %r12
	leaq	80(%rsp), %r15
	movq	%r15, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%r15), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	(%r15), %rbx
	leaq	(%rbx,%r13,4), %rax
	movq	%rax, 112(%rsp)                 # 8-byte Spill
	negq	%rbp
	sarq	$2, %rbp
	negq	%rbp
	leaq	24(%rsp), %rdi
	movq	%rbx, %rsi
	movq	%rbp, %rdx
	movq	%rbx, %rcx
	xorl	%r8d, %r8d
	callq	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
	leaq	(%rbx,%r13,4), %rdx
	addq	$-4, %rdx
	leaq	48(%rsp), %rsi
	leaq	24(%rsp), %rbx
	movl	$1, %ecx
	xorl	%edi, %edi
	movq	%rbx, %r8
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
	movl	(%rbx), %eax
	movq	%r13, %rbp
	addl	-4(%r14,%r13,4), %eax
	movl	%eax, (%rbx)
	leaq	24(%rsp), %rdx
	movl	$1, %ecx
	xorl	%edi, %edi
	xorl	%esi, %esi
	movq	112(%rsp), %r8                  # 8-byte Reload
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
	movq	(%r15), %rax
	movq	%rax, 32(%rsp)
	jmp	.LBB6_3
.LBB6_2:                                # %._crit_edge
	movq	%r13, %rbp
	leaq	4(,%r13,4), %r12
.LBB6_3:
	leaq	72(%rsp), %rdi
	callq	hipEventCreate
	leaq	40(%rsp), %rdi
	callq	hipEventCreate
	movl	$4, %edi
	callq	_Znam
	movq	%rax, %r15
	movl	$10240, %esi                    # imm = 0x2800
	xorl	%edi, %edi
	callq	hipDeviceSetLimit
	leaq	128(%rsp), %rdi
	movl	$2, %esi
	callq	hipDeviceGetLimit
	leaq	120(%rsp), %rdi
	xorl	%esi, %esi
	callq	hipDeviceGetLimit
	leaq	32(%rsp), %rbx
	movq	%rbx, %rdi
	movq	%r12, %rsi
	callq	hipMalloc
	movq	(%rbx), %rdi
	movq	%r14, %rsi
	movq	%r12, %rdx
	movl	$1, %ecx
	callq	hipMemcpy
	movq	64(%rsp), %r14                  # 8-byte Reload
	movq	8(%r14), %rsi
	subq	(%r14), %rsi
	sarq	$2, %rsi
	leaq	80(%rsp), %rbx
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
	movq	(%r14), %rdx
	movq	8(%r14), %rcx
	movq	8(%rbx), %r8
	subq	%rdx, %rcx
	sarq	$2, %rcx
.Ltmp349:
	leaq	8(%rsp), %rdi
	leaq	15(%rsp), %rsi
	callq	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
.Ltmp350:
# %bb.4:
.Ltmp351:
	callq	hipDeviceSynchronize
.Ltmp352:
# %bb.5:
	movq	72(%rsp), %rdi
.Ltmp354:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp355:
	movq	%rbp, %rbx
	movl	60(%rsp), %ebp                  # 4-byte Reload
# %bb.6:
	callq	clock
	movq	%rax, %r14
	leaq	(,%rbx,4), %r13
.Ltmp356:
	leaq	16(%rsp), %rdi
	movq	%r13, %rsi
	callq	hipMalloc
.Ltmp357:
# %bb.7:
	movl	%ebp, %r12d
	btsq	$32, %r12
.Ltmp358:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp359:
# %bb.8:
	testl	%eax, %eax
	jne	.LBB6_10
# %bb.9:
	movq	32(%rsp), %rdi
	movq	16(%rsp), %rsi
.Ltmp360:
	movl	%ebp, %edx
	callq	_Z30__device_stub__getNumOfBucketsPiS_i
.Ltmp361:
.LBB6_10:
	movq	16(%rsp), %rcx
	negq	%r13
	sarq	$2, %r13
	negq	%r13
.Ltmp363:
	leaq	8(%rsp), %rdi
	movq	%rcx, %rsi
	movq	%r13, %rdx
	callq	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
.Ltmp364:
# %bb.11:
	movq	16(%rsp), %rax
	leaq	(%rax,%rbx,4), %rsi
	addq	$-4, %rsi
.Ltmp365:
	movl	$4, %edx
	movq	%r15, %rdi
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp366:
# %bb.12:
	movslq	(%r15), %rsi
	addq	%rbx, %rsi
	shlq	$2, %rsi
.Ltmp367:
	leaq	24(%rsp), %rdi
	callq	hipMalloc
.Ltmp368:
# %bb.13:
	movslq	(%r15), %rax
	leaq	4(,%rax,4), %rsi
.Ltmp369:
	leaq	48(%rsp), %rdi
	callq	hipMalloc
.Ltmp370:
# %bb.14:
	movq	88(%rsp), %r15
.Ltmp371:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.15, %esi
	movl	$30, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp372:
# %bb.15:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp373:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp374:
# %bb.16:                               # %.noexc
.Ltmp375:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp376:
# %bb.17:                               # %.noexc93
.Ltmp377:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp378:
# %bb.18:                               # %_ZNSolsEPFRSoS_E.exit
.Ltmp379:
	movabsq	$4294967297, %rdx               # imm = 0x100000001
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp380:
# %bb.19:
	testl	%eax, %eax
	jne	.LBB6_21
# %bb.20:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
.Ltmp381:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i
.Ltmp382:
.LBB6_21:
.Ltmp383:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.16, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp384:
# %bb.22:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit76
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp385:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp386:
# %bb.23:                               # %.noexc95
.Ltmp387:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp388:
# %bb.24:                               # %.noexc96
.Ltmp389:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp390:
# %bb.25:                               # %_ZNSolsEPFRSoS_E.exit77
.Ltmp391:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.17, %esi
	movl	$28, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp392:
# %bb.26:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit78
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp393:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp394:
# %bb.27:                               # %.noexc99
.Ltmp395:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp396:
# %bb.28:                               # %.noexc100
.Ltmp397:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp398:
# %bb.29:                               # %_ZNSolsEPFRSoS_E.exit79
.Ltmp399:
	movabsq	$4294967796, %rdx               # imm = 0x1000001F4
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp400:
# %bb.30:
	testl	%eax, %eax
	jne	.LBB6_32
# %bb.31:
	movq	24(%rsp), %rsi
	movq	32(%rsp), %rdx
	movq	16(%rsp), %rcx
	movq	48(%rsp), %r8
.Ltmp401:
	movq	%r15, %rdi
	movl	%ebp, %r9d
	callq	_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
.Ltmp402:
.LBB6_32:
.Ltmp403:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.18, %esi
	movl	$27, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp404:
# %bb.33:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit80
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp405:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp406:
# %bb.34:                               # %.noexc103
.Ltmp407:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp408:
# %bb.35:                               # %.noexc104
.Ltmp409:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp410:
# %bb.36:                               # %_ZNSolsEPFRSoS_E.exit81
.Ltmp411:
	movl	$_ZSt4cout, %r13d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.19, %esi
	movl	$25, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp412:
# %bb.37:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit82
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r13
.Ltmp413:
	movq	%r13, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp414:
# %bb.38:                               # %.noexc107
.Ltmp415:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp416:
# %bb.39:                               # %.noexc108
.Ltmp417:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp418:
# %bb.40:                               # %_ZNSolsEPFRSoS_E.exit83
.Ltmp419:
	movabsq	$4294967796, %rdx               # imm = 0x1000001F4
	movq	%r12, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	__hipPushCallConfiguration
.Ltmp420:
# %bb.41:
	testl	%eax, %eax
	jne	.LBB6_43
# %bb.42:
	movq	48(%rsp), %rsi
	movq	16(%rsp), %rdx
	movq	32(%rsp), %rcx
.Ltmp421:
	movq	%r15, %rdi
	movl	%ebp, %r8d
	callq	_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i
.Ltmp422:
.LBB6_43:
.Ltmp423:
	movl	$_ZSt4cout, %r12d
	movl	$_ZSt4cout, %edi
	movl	$.L.str.20, %esi
	movl	$22, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp424:
# %bb.44:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit84
	movq	_ZSt4cout(%rip), %rax
	addq	-24(%rax), %r12
.Ltmp425:
	movq	%r12, %rdi
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp426:
# %bb.45:                               # %.noexc111
.Ltmp427:
	movsbl	%al, %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo3putEc
.Ltmp428:
# %bb.46:                               # %.noexc112
.Ltmp429:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp430:
# %bb.47:                               # %_ZNSolsEPFRSoS_E.exit85
	movq	40(%rsp), %rdi
.Ltmp431:
	xorl	%esi, %esi
	callq	hipEventRecord
.Ltmp432:
# %bb.48:
	movq	40(%rsp), %rdi
.Ltmp433:
	callq	hipEventSynchronize
.Ltmp434:
# %bb.49:
	leaq	8(%rsp), %rdi
	movl	$0, (%rdi)
	movq	72(%rsp), %rsi
	movq	40(%rsp), %rdx
.Ltmp436:
	callq	hipEventElapsedTime
.Ltmp437:
# %bb.50:
.Ltmp438:
	callq	hipDeviceSynchronize
.Ltmp439:
# %bb.51:
	callq	clock
	movq	%rax, %r12
	movq	64(%rsp), %rax                  # 8-byte Reload
	movq	24(%rax), %rax
	movslq	(%rax,%rbx,4), %rax
	leaq	(,%rax,4), %rbx
	testq	%rax, %rax
	movq	$-1, %rdi
	cmovnsq	%rbx, %rdi
.Ltmp441:
	callq	_Znam
.Ltmp442:
# %bb.52:
.Ltmp443:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%rbx, %rdx
	movl	$2, %ecx
	callq	hipMemcpy
.Ltmp444:
# %bb.53:
.Ltmp445:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.21, %esi
	movl	$33, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp446:
# %bb.54:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit86
	cvtss2sd	8(%rsp), %xmm0
.Ltmp447:
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp448:
# %bb.55:                               # %_ZNSolsEf.exit
.Ltmp449:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp450:
# %bb.56:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit87
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp451:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp452:
# %bb.57:                               # %.noexc115
.Ltmp453:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp454:
# %bb.58:                               # %.noexc116
.Ltmp455:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp456:
# %bb.59:                               # %_ZNSolsEPFRSoS_E.exit88
.Ltmp457:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.23, %esi
	movl	$42, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp458:
# %bb.60:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit89
.Ltmp459:
	subq	%r14, %r12
	xorps	%xmm0, %xmm0
	cvtsi2sd	%r12, %xmm0
	mulsd	.LCPI6_0(%rip), %xmm0
	divsd	.LCPI6_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
.Ltmp460:
# %bb.61:                               # %_ZNSolsEd.exit
.Ltmp461:
	movq	%rax, %rbx
	movl	$.L.str.22, %esi
	movl	$4, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
.Ltmp462:
# %bb.62:                               # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc.exit90
	movq	(%rbx), %rax
	movq	-24(%rax), %rdi
	addq	%rbx, %rdi
.Ltmp463:
	movl	$10, %esi
	callq	_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
.Ltmp464:
# %bb.63:                               # %.noexc119
.Ltmp465:
	movsbl	%al, %esi
	movq	%rbx, %rdi
	callq	_ZNSo3putEc
.Ltmp466:
# %bb.64:                               # %.noexc120
.Ltmp467:
	movq	%rax, %rdi
	callq	_ZNSo5flushEv
.Ltmp468:
# %bb.65:                               # %_ZNSolsEPFRSoS_E.exit91
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB6_67
# %bb.66:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp473:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp474:
.LBB6_67:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit
	addq	$136, %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
.LBB6_68:
	.cfi_def_cfa_offset 192
.Ltmp475:
	jmp	.LBB6_69
.LBB6_70:
.Ltmp440:
	jmp	.LBB6_75
.LBB6_71:
.Ltmp353:
	jmp	.LBB6_75
.LBB6_72:
.Ltmp362:
	jmp	.LBB6_75
.LBB6_73:
.Ltmp469:
	jmp	.LBB6_75
.LBB6_74:
.Ltmp435:
.LBB6_75:
	movq	%rax, %rbx
	movq	96(%rsp), %rdx
	testq	%rdx, %rdx
	je	.LBB6_77
# %bb.76:
	movq	80(%rsp), %rax
	movq	88(%rsp), %rsi
	shlq	$2, %rdx
	movq	8(%rax), %rdi
.Ltmp470:
	movl	$4, %ecx
	callq	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm
.Ltmp471:
.LBB6_77:                               # %_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEED2Ev.exit92
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.LBB6_78:
.Ltmp472:
.LBB6_69:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end6:
	.size	_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii, .Lfunc_end6-_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii
	.cfi_endproc
	.section	.gcc_except_table._Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,"aG",@progbits,_Z12gpuArraySortIiLi10000EEv10dataArraysIT_EPiii,comdat
	.p2align	2, 0x0
GCC_except_table6:
.Lexception4:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase4-.Lttbaseref4
.Lttbaseref4:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end4-.Lcst_begin4
.Lcst_begin4:
	.uleb128 .Lfunc_begin4-.Lfunc_begin4    # >> Call Site 1 <<
	.uleb128 .Ltmp349-.Lfunc_begin4         #   Call between .Lfunc_begin4 and .Ltmp349
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp349-.Lfunc_begin4         # >> Call Site 2 <<
	.uleb128 .Ltmp352-.Ltmp349              #   Call between .Ltmp349 and .Ltmp352
	.uleb128 .Ltmp353-.Lfunc_begin4         #     jumps to .Ltmp353
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp354-.Lfunc_begin4         # >> Call Site 3 <<
	.uleb128 .Ltmp361-.Ltmp354              #   Call between .Ltmp354 and .Ltmp361
	.uleb128 .Ltmp362-.Lfunc_begin4         #     jumps to .Ltmp362
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp363-.Lfunc_begin4         # >> Call Site 4 <<
	.uleb128 .Ltmp434-.Ltmp363              #   Call between .Ltmp363 and .Ltmp434
	.uleb128 .Ltmp435-.Lfunc_begin4         #     jumps to .Ltmp435
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp436-.Lfunc_begin4         # >> Call Site 5 <<
	.uleb128 .Ltmp439-.Ltmp436              #   Call between .Ltmp436 and .Ltmp439
	.uleb128 .Ltmp440-.Lfunc_begin4         #     jumps to .Ltmp440
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp441-.Lfunc_begin4         # >> Call Site 6 <<
	.uleb128 .Ltmp468-.Ltmp441              #   Call between .Ltmp441 and .Ltmp468
	.uleb128 .Ltmp469-.Lfunc_begin4         #     jumps to .Ltmp469
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp473-.Lfunc_begin4         # >> Call Site 7 <<
	.uleb128 .Ltmp474-.Ltmp473              #   Call between .Ltmp473 and .Ltmp474
	.uleb128 .Ltmp475-.Lfunc_begin4         #     jumps to .Ltmp475
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp470-.Lfunc_begin4         # >> Call Site 8 <<
	.uleb128 .Ltmp471-.Ltmp470              #   Call between .Ltmp470 and .Ltmp471
	.uleb128 .Ltmp472-.Lfunc_begin4         #     jumps to .Ltmp472
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp471-.Lfunc_begin4         # >> Call Site 9 <<
	.uleb128 .Lfunc_end6-.Ltmp471           #   Call between .Ltmp471 and .Lfunc_end6
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end4:
	.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.__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_end7:
	.size	__clang_call_terminate, .Lfunc_end7-__clang_call_terminate
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_,"axG",@progbits,_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_,comdat
	.weak	_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_ # -- Begin function _ZNSt8__detail18__to_chars_10_implIjEEvPcjT_
	.type	_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_,@function
_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_: # @_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_
	.cfi_startproc
# %bb.0:
                                        # kill: def $esi killed $esi def $rsi
	cmpl	$100, %edx
	jb	.LBB8_1
# %bb.2:                                # %.lr.ph.preheader
	decl	%esi
.LBB8_3:                                # %.lr.ph
                                        # =>This Inner Loop Header: Depth=1
	movl	%edx, %eax
	imulq	$1374389535, %rax, %rax         # imm = 0x51EB851F
	shrq	$37, %rax
	imull	$100, %eax, %ecx
	movl	%edx, %r8d
	subl	%ecx, %r8d
	movb	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits+1(%r8,%r8), %cl
	movl	%esi, %r9d
	movb	%cl, (%rdi,%r9)
	movb	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits(%r8,%r8), %cl
	leal	-1(%rsi), %r8d
	movb	%cl, (%rdi,%r8)
	addl	$-2, %esi
	cmpl	$9999, %edx                     # imm = 0x270F
	movl	%eax, %edx
	ja	.LBB8_3
	jmp	.LBB8_4
.LBB8_1:
	movl	%edx, %eax
.LBB8_4:                                # %._crit_edge
	cmpl	$10, %eax
	jb	.LBB8_6
# %bb.5:
	movl	%eax, %eax
	leaq	(%rax,%rax), %rcx
	movl	%ecx, %ecx
	movb	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits+1(%rcx), %cl
	movb	%cl, 1(%rdi)
	movb	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits(%rax,%rax), %al
	jmp	.LBB8_7
.LBB8_6:
	orb	$48, %al
.LBB8_7:
	movb	%al, (%rdi)
	retq
.Lfunc_end8:
	.size	_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_, .Lfunc_end8-_ZNSt8__detail18__to_chars_10_implIjEEvPcjT_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt6vectorIiSaIiEEC2ERKS1_,"axG",@progbits,_ZNSt6vectorIiSaIiEEC2ERKS1_,comdat
	.weak	_ZNSt6vectorIiSaIiEEC2ERKS1_    # -- Begin function _ZNSt6vectorIiSaIiEEC2ERKS1_
	.p2align	1, 0x90
	.type	_ZNSt6vectorIiSaIiEEC2ERKS1_,@function
_ZNSt6vectorIiSaIiEEC2ERKS1_:           # @_ZNSt6vectorIiSaIiEEC2ERKS1_
	.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	%rsi, %r14
	movq	%rdi, %rbx
	movq	8(%rsi), %rax
	movq	(%rsi), %rcx
	movq	%rax, %r12
	subq	%rcx, %r12
	sarq	$2, %r12
	xorps	%xmm0, %xmm0
	movups	%xmm0, (%rdi)
	movq	$0, 16(%rdi)
	cmpq	%rcx, %rax
	je	.LBB9_1
# %bb.2:
	movq	%rbx, %rdi
	movq	%r12, %rsi
	xorl	%edx, %edx
	callq	_ZNSt15__new_allocatorIiE8allocateEmPKv
	movq	%rax, %r15
	jmp	.LBB9_3
.LBB9_1:
	xorl	%r15d, %r15d
.LBB9_3:
	movq	%r15, (%rbx)
	movq	%r15, 8(%rbx)
	leaq	(%r15,%r12,4), %rax
	movq	%rax, 16(%rbx)
	movq	(%r14), %rsi
	movq	8(%r14), %r14
	subq	%rsi, %r14
	cmpq	$5, %r14
	jl	.LBB9_5
# %bb.4:
	movq	%r15, %rdi
	movq	%r14, %rdx
	callq	memmove@PLT
.LBB9_7:
	addq	%r14, %r15
	movq	%r15, 8(%rbx)
	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
.LBB9_5:
	.cfi_def_cfa_offset 48
	cmpq	$4, %r14
	jne	.LBB9_7
# %bb.6:
	movl	(%rsi), %eax
	movl	%eax, (%r15)
	jmp	.LBB9_7
.Lfunc_end9:
	.size	_ZNSt6vectorIiSaIiEEC2ERKS1_, .Lfunc_end9-_ZNSt6vectorIiSaIiEEC2ERKS1_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt15__new_allocatorIiE8allocateEmPKv,"axG",@progbits,_ZNSt15__new_allocatorIiE8allocateEmPKv,comdat
	.weak	_ZNSt15__new_allocatorIiE8allocateEmPKv # -- Begin function _ZNSt15__new_allocatorIiE8allocateEmPKv
	.p2align	1, 0x90
	.type	_ZNSt15__new_allocatorIiE8allocateEmPKv,@function
_ZNSt15__new_allocatorIiE8allocateEmPKv: # @_ZNSt15__new_allocatorIiE8allocateEmPKv
	.cfi_startproc
# %bb.0:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movq	%rsi, %rax
	shrq	$61, %rax
	jne	.LBB10_1
# %bb.3:
	shlq	$2, %rsi
	movq	%rsi, %rdi
	popq	%rax
	.cfi_def_cfa_offset 8
	jmp	_Znwm                           # TAILCALL
.LBB10_1:
	.cfi_def_cfa_offset 16
	shrq	$62, %rsi
	je	.LBB10_2
# %bb.4:
	callq	_ZSt28__throw_bad_array_new_lengthv
.LBB10_2:
	callq	_ZSt17__throw_bad_allocv
.Lfunc_end10:
	.size	_ZNSt15__new_allocatorIiE8allocateEmPKv, .Lfunc_end10-_ZNSt15__new_allocatorIiE8allocateEmPKv
	.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	.LBB11_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	.LBB11_3
.LBB11_1:                               # %._crit_edge
	movq	(%rbx), %rax
.LBB11_3:
	testq	%r14, %r14
	je	.LBB11_7
# %bb.4:
	cmpq	$1, %r14
	jne	.LBB11_6
# %bb.5:
	movb	(%r15), %cl
	movb	%cl, (%rax)
	jmp	.LBB11_7
.LBB11_6:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%r14, %rdx
	callq	memcpy@PLT
.LBB11_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_end11:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag, .Lfunc_end11-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_,"axG",@progbits,_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_,comdat
	.weak	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_ # -- Begin function _ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	.p2align	1, 0x90
	.type	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_,@function
_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_: # @_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	.cfi_startproc
# %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
	movq	%rdx, (%rsp)                    # 8-byte Spill
	movq	%rsi, %r12
	movq	%rdi, %rbx
	movl	$1, %esi
	movl	$.L.str.14, %edx
	callq	_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc
	movq	(%rbx), %r13
	movq	8(%rbx), %r15
	movq	%r12, 8(%rsp)                   # 8-byte Spill
	subq	%r13, %r12
	movq	%r12, %r14
	sarq	$2, %r14
	testq	%rax, %rax
	movq	%rax, 16(%rsp)                  # 8-byte Spill
	je	.LBB12_1
# %bb.2:
	movq	%rbx, %rdi
	movq	%rax, %rsi
	xorl	%edx, %edx
	callq	_ZNSt15__new_allocatorIiE8allocateEmPKv
	movq	%rax, %rbp
	jmp	.LBB12_3
.LBB12_1:
	xorl	%ebp, %ebp
.LBB12_3:                               # %_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEm.exit
	movq	(%rsp), %rax                    # 8-byte Reload
	movl	(%rax), %eax
	movl	%eax, (%rbp,%r14,4)
	testq	%r12, %r12
	jle	.LBB12_5
# %bb.4:
	movq	%rbp, %rdi
	movq	%r13, %rsi
	movq	%r12, %rdx
	callq	memmove@PLT
.LBB12_5:                               # %_ZNSt6vectorIiSaIiEE11_S_relocateEPiS2_S2_RS0_.exit
	addq	%rbp, %r12
	addq	$4, %r12
	movq	8(%rsp), %rsi                   # 8-byte Reload
	subq	%rsi, %r15
	testq	%r15, %r15
	jle	.LBB12_7
# %bb.6:
	movq	%r12, %rdi
	movq	%r15, %rdx
	callq	memmove@PLT
.LBB12_7:                               # %_ZNSt6vectorIiSaIiEE11_S_relocateEPiS2_S2_RS0_.exit16
	testq	%r13, %r13
	je	.LBB12_9
# %bb.8:
	movq	%r13, %rdi
	callq	_ZdlPv
.LBB12_9:                               # %_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPim.exit
	addq	%r15, %r12
	movq	%rbp, (%rbx)
	movq	%r12, 8(%rbx)
	movq	16(%rsp), %rax                  # 8-byte Reload
	leaq	(,%rax,4), %rax
	addq	%rbp, %rax
	movq	%rax, 16(%rbx)
	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
.Lfunc_end12:
	.size	_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_, .Lfunc_end12-_ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc,"axG",@progbits,_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc,comdat
	.weak	_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc # -- Begin function _ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc
	.p2align	1, 0x90
	.type	_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc,@function
_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc: # @_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc
	.cfi_startproc
# %bb.0:
	movabsq	$2305843009213693951, %rcx      # imm = 0x1FFFFFFFFFFFFFFF
	movq	8(%rdi), %r8
	subq	(%rdi), %r8
	sarq	$2, %r8
	movq	%rcx, %rax
	subq	%r8, %rax
	cmpq	%rsi, %rax
	jb	.LBB13_2
# %bb.1:
	cmpq	%rsi, %r8
	cmovaq	%r8, %rsi
	leaq	(%rsi,%r8), %rax
	cmpq	%rcx, %rax
	cmovaeq	%rcx, %rax
	addq	%r8, %rsi
	cmovbq	%rcx, %rax
	retq
.LBB13_2:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movq	%rdx, %rdi
	callq	_ZSt20__throw_length_errorPKc
.Lfunc_end13:
	.size	_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc, .Lfunc_end13-_ZNKSt6vectorIiSaIiEE12_M_check_lenEmPKc
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i,"axG",@progbits,_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i,comdat
	.weak	_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i # -- Begin function _Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i
	.type	_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i,@function
_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i: # @_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_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	$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	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	$_Z11splitterKerIiLi100EEvPT_S1_PiS2_i, %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_end14:
	.size	_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i, .Lfunc_end14-_Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i # -- Begin function _Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.type	_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,@function
_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i: # @_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_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	$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	24(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	4(%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	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	$_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i, %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_end15:
	.size	_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i, .Lfunc_end15-_Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i,"axG",@progbits,_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i,comdat
	.weak	_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i # -- Begin function _Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i
	.type	_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i,@function
_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i: # @_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_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	$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	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	$_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i, %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_end16:
	.size	_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i, .Lfunc_end16-_Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_,"axG",@progbits,_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_,comdat
	.weak	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_ # -- Begin function _ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_,@function
_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_: # @_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
.Lfunc_begin5:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception5
# %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
	movq	%rcx, %rbx
	testq	%rdx, %rdx
	je	.LBB17_28
# %bb.1:
	movl	%r8d, %ebp
	movq	%rdx, %r14
	movq	%rsi, %r15
	movq	%rdi, %r13
	xorl	%eax, %eax
	leaq	8(%rsp), %rsi
	movq	%rax, (%rsi)
	.cfi_escape 0x2e, 0x10
	xorl	%edi, %edi
	movq	%r15, %rdx
	movq	%rbx, %rcx
	movq	%r14, %r9
	pushq	$0
	.cfi_adjust_cfa_offset 8
	pushq	%rax
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	addq	$16, %rsp
	.cfi_adjust_cfa_offset -16
	movl	%eax, %r12d
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
	testl	%r12d, %r12d
	jne	.LBB17_2
# %bb.7:                                # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit.i
	movq	8(%rsp), %r12
	movq	%r13, 16(%rsp)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 24(%rsp)
	testq	%r12, %r12
	je	.LBB17_8
# %bb.9:                                # %.noexc.i.i.i
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	movq	%r12, %rsi
	callq	_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm
	movq	%rax, %rdi
	jmp	.LBB17_10
.LBB17_8:
	xorl	%edi, %edi
.LBB17_10:
	movq	%rdi, 24(%rsp)
	movq	%r12, 32(%rsp)
.Ltmp481:
	.cfi_escape 0x2e, 0x10
	leaq	8(%rsp), %rsi
	movq	%r15, %rdx
	movq	%rbx, %rcx
	movl	%ebp, %r8d
	movq	%r14, %r9
	pushq	$0
	.cfi_adjust_cfa_offset 8
	pushq	$0
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	addq	$16, %rsp
	.cfi_adjust_cfa_offset -16
.Ltmp482:
# %bb.11:                               # %_ZN6thrust11hip_rocprim6__scan21invoke_exclusive_scanINS0_3tagENS_10device_ptrIiEES5_ilNS_4plusIvEEEENSt9enable_ifIXsrDTcl16nondeterministicfp_EE5valueE10hipError_tE4typeERNS0_16execution_policyIT_EEPvRmT0_T1_T2_T3_T4_P12ihipStream_tb.exit.i
.Ltmp483:
	movl	%eax, %ebp
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
.Ltmp484:
# %bb.12:                               # %.noexc.i
	testl	%ebp, %ebp
	jne	.LBB17_13
# %bb.17:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit27.i
.Ltmp490:
	.cfi_escape 0x2e, 0x00
	xorl	%edi, %edi
	callq	hipStreamSynchronize
.Ltmp491:
# %bb.18:                               # %_ZN6thrust11hip_rocprim20synchronize_optionalINS0_16execution_policyINS0_3tagEEEEE10hipError_tRT_.exit.i
.Ltmp492:
	movl	%eax, %ebp
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
.Ltmp493:
# %bb.19:                               # %.noexc30.i
	testl	%ebp, %ebp
	jne	.LBB17_20
# %bb.27:
	leaq	(%rbx,%r14,4), %rbx
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	callq	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
.LBB17_28:                              # %_ZN6thrust11hip_rocprim6__scan14exclusive_scanINS0_3tagENS_10device_ptrIiEES5_liNS_4plusIvEEEET1_RNS0_16execution_policyIT_EET0_S8_T2_T3_T4_.exit
	movq	%rbx, %rax
	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
.LBB17_2:
	.cfi_def_cfa_offset 96
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp476:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp477:
# %bb.3:
.Ltmp478:
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.24, %ecx
	movq	%rbx, %rdi
	movl	%r12d, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp479:
# %bb.4:
	.cfi_escape 0x2e, 0x00
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB17_13:
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp485:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp486:
# %bb.14:
.Ltmp487:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.25, %esi
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorC2EPKc
.Ltmp488:
	jmp	.LBB17_22
.LBB17_20:
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp494:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp495:
# %bb.21:
.Ltmp496:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.26, %esi
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorC2EPKc
.Ltmp497:
.LBB17_22:
	movq	$_ZTVN6thrust6system12system_errorE+16, (%rbx)
	movl	%ebp, 16(%rbx)
	movq	%r14, 24(%rbx)
	movq	%rbx, %rax
	addq	$48, %rax
	movq	%rax, 32(%rbx)
	movq	$0, 40(%rbx)
	movb	$0, 48(%rbx)
.Ltmp499:
	.cfi_escape 0x2e, 0x00
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp500:
# %bb.23:                               # %.cont.i
.LBB17_24:
.Ltmp498:
	jmp	.LBB17_16
.LBB17_15:
.Ltmp489:
.LBB17_16:                              # %.body.i
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	jmp	.LBB17_26
.LBB17_5:
.Ltmp480:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	jmp	.LBB17_6
.LBB17_25:
.Ltmp501:
	movq	%rax, %r14
.LBB17_26:                              # %.body.i
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	callq	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
.LBB17_6:                               # %common.resume.i
	.cfi_escape 0x2e, 0x00
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end17:
	.size	_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_, .Lfunc_end17-_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_,"aG",@progbits,_ZZN6thrust11hip_rocprim16exclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_iNS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_T4_EN10workaround3parERNS8_IS2_EES4_lS4_iS6_,comdat
	.p2align	2, 0x0
GCC_except_table17:
.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 .Ltmp481-.Lfunc_begin5         #   Call between .Lfunc_begin5 and .Ltmp481
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp481-.Lfunc_begin5         # >> Call Site 2 <<
	.uleb128 .Ltmp493-.Ltmp481              #   Call between .Ltmp481 and .Ltmp493
	.uleb128 .Ltmp501-.Lfunc_begin5         #     jumps to .Ltmp501
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp493-.Lfunc_begin5         # >> Call Site 3 <<
	.uleb128 .Ltmp476-.Ltmp493              #   Call between .Ltmp493 and .Ltmp476
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp476-.Lfunc_begin5         # >> Call Site 4 <<
	.uleb128 .Ltmp479-.Ltmp476              #   Call between .Ltmp476 and .Ltmp479
	.uleb128 .Ltmp480-.Lfunc_begin5         #     jumps to .Ltmp480
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp479-.Lfunc_begin5         # >> Call Site 5 <<
	.uleb128 .Ltmp485-.Ltmp479              #   Call between .Ltmp479 and .Ltmp485
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp485-.Lfunc_begin5         # >> Call Site 6 <<
	.uleb128 .Ltmp488-.Ltmp485              #   Call between .Ltmp485 and .Ltmp488
	.uleb128 .Ltmp489-.Lfunc_begin5         #     jumps to .Ltmp489
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp488-.Lfunc_begin5         # >> Call Site 7 <<
	.uleb128 .Ltmp494-.Ltmp488              #   Call between .Ltmp488 and .Ltmp494
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp494-.Lfunc_begin5         # >> Call Site 8 <<
	.uleb128 .Ltmp497-.Ltmp494              #   Call between .Ltmp494 and .Ltmp497
	.uleb128 .Ltmp498-.Lfunc_begin5         #     jumps to .Ltmp498
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp499-.Lfunc_begin5         # >> Call Site 9 <<
	.uleb128 .Ltmp500-.Ltmp499              #   Call between .Ltmp499 and .Ltmp500
	.uleb128 .Ltmp501-.Lfunc_begin5         #     jumps to .Ltmp501
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp500-.Lfunc_begin5         # >> Call Site 10 <<
	.uleb128 .Lfunc_end17-.Ltmp500          #   Call between .Ltmp500 and .Lfunc_end17
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end5:
	.p2align	2, 0x0
                                        # -- 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	.LBB18_1
.LBB18_4:
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %eax
	retq
.LBB18_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB18_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
.LBB18_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB18_4
.Lfunc_end18:
	.size	_ZN6thrust6system12hip_categoryEv, .Lfunc_end18-_ZN6thrust6system12hip_categoryEv
	.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_end19:
	.size	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc, .Lfunc_end19-_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	.LBB20_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB20_2:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt13runtime_errorD2Ev        # TAILCALL
.Lfunc_end20:
	.size	_ZN6thrust6system12system_errorD2Ev, .Lfunc_end20-_ZN6thrust6system12system_errorD2Ev
	.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_end21:
	.size	_ZN6thrust6system14error_categoryD2Ev, .Lfunc_end21-_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_end22:
	.size	_ZN6thrust6system11hip_rocprim6detail18hip_error_categoryD0Ev, .Lfunc_end22-_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.27, %eax
	retq
.Lfunc_end23:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category4nameEv, .Lfunc_end23-_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	.LBB24_5
# %bb.1:
	movb	_ZGVZN6thrust6system12hip_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB24_2
.LBB24_4:                               # %_ZN6thrust6system20make_error_conditionENS0_11hip_rocprim4errc6errc_tE.exit
	movl	$_ZZN6thrust6system12hip_categoryEvE6result, %edx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB24_5:
	.cfi_def_cfa_offset 16
	movb	_ZGVZN6thrust6system15system_categoryEvE6result(%rip), %al
	testb	%al, %al
	je	.LBB24_6
.LBB24_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
.LBB24_2:
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system12hip_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB24_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	.LBB24_4
.LBB24_6:
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB24_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	.LBB24_8
.Lfunc_end24:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category23default_error_conditionEi, .Lfunc_end24-_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_end25:
	.size	_ZNK6thrust6system14error_category10equivalentEiRKNS0_15error_conditionE, .Lfunc_end25-_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_end26:
	.size	_ZNK6thrust6system14error_category10equivalentERKNS0_10error_codeEi, .Lfunc_end26-_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_begin6:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception6
# %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.32, %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
.Ltmp502:
	movl	$.L.str.33, %esi
	movq	%r12, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp503:
# %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	.LBB27_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	.LBB27_4
.LBB27_2:
	movq	8(%r12), %r13
	leaq	1(%r13), %rdx
	movq	%r14, %rdi
	callq	memcpy@PLT
.LBB27_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.31, %esi
	cmovneq	%r15, %rsi
.Ltmp505:
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp506:
# %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	.LBB27_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	.LBB27_8
.LBB27_6:
	movq	8(%r15), %r13
	leaq	1(%r13), %rdx
	callq	memcpy@PLT
.LBB27_8:
	movq	%r13, 8(%rbx)
	movq	%r12, (%r15)
	movq	$0, 8(%r15)
	movb	$0, 16(%r15)
	movq	40(%rsp), %rdi
	cmpq	%r14, %rdi
	je	.LBB27_10
# %bb.9:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i18
	callq	_ZdlPv
.LBB27_10:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	8(%rsp), %rdi
	leaq	24(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB27_12
# %bb.11:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i19
	callq	_ZdlPv
.LBB27_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
.LBB27_14:
	.cfi_def_cfa_offset 128
.Ltmp507:
	movq	%rax, %rbx
	movq	40(%rsp), %rdi
	cmpq	%r14, %rdi
	je	.LBB27_16
# %bb.15:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i22
	callq	_ZdlPv
	jmp	.LBB27_16
.LBB27_13:
.Ltmp504:
	movq	%rax, %rbx
.LBB27_16:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit24
	movq	8(%rsp), %rdi
	leaq	24(%rsp), %rax
	cmpq	%rax, %rdi
	je	.LBB27_18
# %bb.17:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i25
	callq	_ZdlPv
.LBB27_18:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit27
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end27:
	.size	_ZNK6thrust6system11hip_rocprim6detail18hip_error_category7messageB5cxx11Ei, .Lfunc_end27-_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_table27:
.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 .Ltmp502-.Lfunc_begin6         #   Call between .Lfunc_begin6 and .Ltmp502
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp502-.Lfunc_begin6         # >> Call Site 2 <<
	.uleb128 .Ltmp503-.Ltmp502              #   Call between .Ltmp502 and .Ltmp503
	.uleb128 .Ltmp504-.Lfunc_begin6         #     jumps to .Ltmp504
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp503-.Lfunc_begin6         # >> Call Site 3 <<
	.uleb128 .Ltmp505-.Ltmp503              #   Call between .Ltmp503 and .Ltmp505
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp505-.Lfunc_begin6         # >> Call Site 4 <<
	.uleb128 .Ltmp506-.Ltmp505              #   Call between .Ltmp505 and .Ltmp506
	.uleb128 .Ltmp507-.Lfunc_begin6         #     jumps to .Ltmp507
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp506-.Lfunc_begin6         # >> Call Site 5 <<
	.uleb128 .Lfunc_end27-.Ltmp506          #   Call between .Ltmp506 and .Lfunc_end27
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end6:
	.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_end28:
	.size	_ZN6thrust6system14error_categoryD0Ev, .Lfunc_end28-_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_end29:
	.size	_ZNK6thrust6system14error_category23default_error_conditionEi, .Lfunc_end29-_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	.LBB30_1
.LBB30_4:
	movl	$_ZZN6thrust6system15system_categoryEvE6result, %eax
	retq
.LBB30_1:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system15system_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB30_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
.LBB30_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB30_4
.Lfunc_end30:
	.size	_ZN6thrust6system15system_categoryEv, .Lfunc_end30-_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_end31:
	.size	_ZN6thrust6system6detail21system_error_categoryD0Ev, .Lfunc_end31-_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.28, %eax
	retq
.Lfunc_end32:
	.size	_ZNK6thrust6system6detail21system_error_category4nameEv, .Lfunc_end32-_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	.LBB33_81
# %bb.1:
	jmpq	*.LJTI33_0(,%rax,8)
.LBB33_2:
	movl	$9901, %edi                     # imm = 0x26AD
	jmp	.LBB33_3
.LBB33_77:
	movl	$9979, %edi                     # imm = 0x26FB
	jmp	.LBB33_3
.LBB33_33:
	movl	$9961, %edi                     # imm = 0x26E9
	jmp	.LBB33_3
.LBB33_50:
	movl	$9968, %edi                     # imm = 0x26F0
	jmp	.LBB33_3
.LBB33_67:
	movl	$9974, %edi                     # imm = 0x26F6
	jmp	.LBB33_3
.LBB33_75:
	movl	$9977, %edi                     # imm = 0x26F9
	jmp	.LBB33_3
.LBB33_28:
	movl	$9945, %edi                     # imm = 0x26D9
	jmp	.LBB33_3
.LBB33_19:
	movl	$9952, %edi                     # imm = 0x26E0
	jmp	.LBB33_3
.LBB33_29:
	movl	$9958, %edi                     # imm = 0x26E6
	jmp	.LBB33_3
.LBB33_22:
	movl	$9955, %edi                     # imm = 0x26E3
	jmp	.LBB33_3
.LBB33_17:
	movl	$9951, %edi                     # imm = 0x26DF
	jmp	.LBB33_3
.LBB33_66:
	movl	$9933, %edi                     # imm = 0x26CD
	jmp	.LBB33_3
.LBB33_80:
	movl	$9941, %edi                     # imm = 0x26D5
	jmp	.LBB33_3
.LBB33_59:
	movl	$9928, %edi                     # imm = 0x26C8
	jmp	.LBB33_3
.LBB33_79:
	movl	$9940, %edi                     # imm = 0x26D4
	jmp	.LBB33_3
.LBB33_74:
	movl	$9938, %edi                     # imm = 0x26D2
	jmp	.LBB33_3
.LBB33_58:
	movl	$9927, %edi                     # imm = 0x26C7
	jmp	.LBB33_3
.LBB33_45:
	movl	$9921, %edi                     # imm = 0x26C1
	jmp	.LBB33_3
.LBB33_68:
	movl	$9975, %edi                     # imm = 0x26F7
	jmp	.LBB33_3
.LBB33_7:
	movl	$9946, %edi                     # imm = 0x26DA
	jmp	.LBB33_3
.LBB33_39:
	movl	$9917, %edi                     # imm = 0x26BD
	jmp	.LBB33_3
.LBB33_48:
	movl	$9966, %edi                     # imm = 0x26EE
	jmp	.LBB33_3
.LBB33_71:
	movl	$9934, %edi                     # imm = 0x26CE
	jmp	.LBB33_3
.LBB33_13:
	movl	$9906, %edi                     # imm = 0x26B2
	jmp	.LBB33_3
.LBB33_43:
	movl	$9919, %edi                     # imm = 0x26BF
	jmp	.LBB33_3
.LBB33_47:
	movl	$9922, %edi                     # imm = 0x26C2
	jmp	.LBB33_3
.LBB33_25:
	movl	$9942, %edi                     # imm = 0x26D6
	jmp	.LBB33_3
.LBB33_57:
	movl	$9926, %edi                     # imm = 0x26C6
	jmp	.LBB33_3
.LBB33_61:
	movl	$9929, %edi                     # imm = 0x26C9
	jmp	.LBB33_3
.LBB33_4:
	movl	$9902, %edi                     # imm = 0x26AE
	jmp	.LBB33_3
.LBB33_54:
	movl	$9924, %edi                     # imm = 0x26C4
	jmp	.LBB33_3
.LBB33_18:
	movl	$9910, %edi                     # imm = 0x26B6
	jmp	.LBB33_3
.LBB33_56:
	movl	$9971, %edi                     # imm = 0x26F3
	jmp	.LBB33_3
.LBB33_5:
	movl	$9903, %edi                     # imm = 0x26AF
	jmp	.LBB33_3
.LBB33_11:
	movl	$9905, %edi                     # imm = 0x26B1
	jmp	.LBB33_3
.LBB33_36:
	movl	$9914, %edi                     # imm = 0x26BA
	jmp	.LBB33_3
.LBB33_62:
	movl	$9930, %edi                     # imm = 0x26CA
	jmp	.LBB33_3
.LBB33_65:
	movl	$9932, %edi                     # imm = 0x26CC
	jmp	.LBB33_3
.LBB33_15:
	movl	$9908, %edi                     # imm = 0x26B4
	jmp	.LBB33_3
.LBB33_6:
	movl	$9904, %edi                     # imm = 0x26B0
	jmp	.LBB33_3
.LBB33_26:
	movl	$9911, %edi                     # imm = 0x26B7
	jmp	.LBB33_3
.LBB33_31:
	movl	$9943, %edi                     # imm = 0x26D7
	jmp	.LBB33_3
.LBB33_53:
	movl	$9923, %edi                     # imm = 0x26C3
	jmp	.LBB33_3
.LBB33_16:
	movl	$9909, %edi                     # imm = 0x26B5
	jmp	.LBB33_3
.LBB33_8:
	movl	$9947, %edi                     # imm = 0x26DB
	jmp	.LBB33_3
.LBB33_12:
	movl	$9950, %edi                     # imm = 0x26DE
	jmp	.LBB33_3
.LBB33_14:
	movl	$9907, %edi                     # imm = 0x26B3
	jmp	.LBB33_3
.LBB33_44:
	movl	$9920, %edi                     # imm = 0x26C0
	jmp	.LBB33_3
.LBB33_69:
	movl	$9976, %edi                     # imm = 0x26F8
	jmp	.LBB33_3
.LBB33_9:
	movl	$9948, %edi                     # imm = 0x26DC
	jmp	.LBB33_3
.LBB33_78:
	movl	$9939, %edi                     # imm = 0x26D3
	jmp	.LBB33_3
.LBB33_35:
	movl	$9913, %edi                     # imm = 0x26B9
	jmp	.LBB33_3
.LBB33_23:
	movl	$9956, %edi                     # imm = 0x26E4
	jmp	.LBB33_3
.LBB33_55:
	movl	$9925, %edi                     # imm = 0x26C5
	jmp	.LBB33_3
.LBB33_63:
	movl	$9931, %edi                     # imm = 0x26CB
	jmp	.LBB33_3
.LBB33_27:
	movl	$9912, %edi                     # imm = 0x26B8
	jmp	.LBB33_3
.LBB33_72:
	movl	$9935, %edi                     # imm = 0x26CF
	jmp	.LBB33_3
.LBB33_37:
	movl	$9915, %edi                     # imm = 0x26BB
	jmp	.LBB33_3
.LBB33_38:
	movl	$9916, %edi                     # imm = 0x26BC
	jmp	.LBB33_3
.LBB33_24:
	movl	$9957, %edi                     # imm = 0x26E5
	jmp	.LBB33_3
.LBB33_70:
	movl	$9944, %edi                     # imm = 0x26D8
	jmp	.LBB33_3
.LBB33_41:
	movl	$9918, %edi                     # imm = 0x26BE
	jmp	.LBB33_3
.LBB33_42:
	movl	$9964, %edi                     # imm = 0x26EC
	jmp	.LBB33_3
.LBB33_46:
	movl	$9965, %edi                     # imm = 0x26ED
	jmp	.LBB33_3
.LBB33_32:
	movl	$9960, %edi                     # imm = 0x26E8
	jmp	.LBB33_3
.LBB33_64:
	movl	$9973, %edi                     # imm = 0x26F5
	jmp	.LBB33_3
.LBB33_30:
	movl	$9959, %edi                     # imm = 0x26E7
	jmp	.LBB33_3
.LBB33_49:
	movl	$9967, %edi                     # imm = 0x26EF
	jmp	.LBB33_3
.LBB33_21:
	movl	$9954, %edi                     # imm = 0x26E2
	jmp	.LBB33_3
.LBB33_73:
	movl	$9936, %edi                     # imm = 0x26D0
	jmp	.LBB33_3
.LBB33_51:
	movl	$9969, %edi                     # imm = 0x26F1
	jmp	.LBB33_3
.LBB33_10:
	movl	$9949, %edi                     # imm = 0x26DD
	jmp	.LBB33_3
.LBB33_34:
	movl	$9962, %edi                     # imm = 0x26EA
	jmp	.LBB33_3
.LBB33_52:
	movl	$9970, %edi                     # imm = 0x26F2
	jmp	.LBB33_3
.LBB33_20:
	movl	$9953, %edi                     # imm = 0x26E1
	jmp	.LBB33_3
.LBB33_40:
	movl	$9963, %edi                     # imm = 0x26EB
	jmp	.LBB33_3
.LBB33_60:
	movl	$9972, %edi                     # imm = 0x26F4
	jmp	.LBB33_3
.LBB33_76:
	movl	$9978, %edi                     # imm = 0x26FA
.LBB33_3:
	callq	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE
	movl	%eax, %ebx
.LBB33_82:
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB33_81:
	.cfi_def_cfa_offset 16
	callq	_ZN6thrust6system15system_categoryEv
	movq	%rax, %rdx
	jmp	.LBB33_82
.Lfunc_end33:
	.size	_ZNK6thrust6system6detail21system_error_category23default_error_conditionEi, .Lfunc_end33-_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
.LJTI33_0:
	.quad	.LBB33_2
	.quad	.LBB33_4
	.quad	.LBB33_5
	.quad	.LBB33_6
	.quad	.LBB33_11
	.quad	.LBB33_13
	.quad	.LBB33_14
	.quad	.LBB33_15
	.quad	.LBB33_16
	.quad	.LBB33_18
	.quad	.LBB33_26
	.quad	.LBB33_27
	.quad	.LBB33_35
	.quad	.LBB33_36
	.quad	.LBB33_37
	.quad	.LBB33_38
	.quad	.LBB33_39
	.quad	.LBB33_41
	.quad	.LBB33_43
	.quad	.LBB33_44
	.quad	.LBB33_45
	.quad	.LBB33_47
	.quad	.LBB33_53
	.quad	.LBB33_54
	.quad	.LBB33_55
	.quad	.LBB33_57
	.quad	.LBB33_58
	.quad	.LBB33_59
	.quad	.LBB33_61
	.quad	.LBB33_62
	.quad	.LBB33_63
	.quad	.LBB33_65
	.quad	.LBB33_66
	.quad	.LBB33_71
	.quad	.LBB33_72
	.quad	.LBB33_73
	.quad	.LBB33_81
	.quad	.LBB33_74
	.quad	.LBB33_78
	.quad	.LBB33_79
	.quad	.LBB33_80
	.quad	.LBB33_25
	.quad	.LBB33_31
	.quad	.LBB33_70
	.quad	.LBB33_28
	.quad	.LBB33_7
	.quad	.LBB33_8
	.quad	.LBB33_9
	.quad	.LBB33_10
	.quad	.LBB33_12
	.quad	.LBB33_17
	.quad	.LBB33_19
	.quad	.LBB33_20
	.quad	.LBB33_21
	.quad	.LBB33_22
	.quad	.LBB33_23
	.quad	.LBB33_24
	.quad	.LBB33_29
	.quad	.LBB33_30
	.quad	.LBB33_32
	.quad	.LBB33_33
	.quad	.LBB33_34
	.quad	.LBB33_40
	.quad	.LBB33_42
	.quad	.LBB33_46
	.quad	.LBB33_48
	.quad	.LBB33_49
	.quad	.LBB33_50
	.quad	.LBB33_51
	.quad	.LBB33_52
	.quad	.LBB33_56
	.quad	.LBB33_60
	.quad	.LBB33_64
	.quad	.LBB33_67
	.quad	.LBB33_68
	.quad	.LBB33_69
	.quad	.LBB33_75
	.quad	.LBB33_76
	.quad	.LBB33_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	.LBB34_1
.LBB34_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
.LBB34_1:
	.cfi_def_cfa_offset 32
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB34_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	.LBB34_3
.Lfunc_end34:
	.size	_ZNK6thrust6system6detail21system_error_category7messageB5cxx11Ei, .Lfunc_end34-_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	.LBB35_1
.LBB35_3:                               # %_ZN6thrust6system16generic_categoryEv.exit
	movl	$_ZZN6thrust6system16generic_categoryEvE6result, %edx
	movl	%ebx, %eax
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB35_1:
	.cfi_def_cfa_offset 16
	movl	$_ZGVZN6thrust6system16generic_categoryEvE6result, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB35_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	.LBB35_3
.Lfunc_end35:
	.size	_ZN6thrust6system20make_error_conditionENS0_4errc6errc_tE, .Lfunc_end35-_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_end36:
	.size	_ZN6thrust6system6detail22generic_error_categoryD0Ev, .Lfunc_end36-_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.29, %eax
	retq
.Lfunc_end37:
	.size	_ZNK6thrust6system6detail22generic_error_category4nameEv, .Lfunc_end37-_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_begin7:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception7
# %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	.LBB38_1
.LBB38_4:
	movl	%ebp, %edi
	callq	strerror
	movq	%rax, %r14
	leaq	16(%rbx), %rax
	movq	%rax, (%rbx)
	testq	%r14, %r14
	je	.LBB38_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	.LBB38_7
.LBB38_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
.LBB38_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
.LBB38_1:
	.cfi_def_cfa_offset 32
	movl	$_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	callq	__cxa_guard_acquire
	testl	%eax, %eax
	je	.LBB38_4
# %bb.2:
	movq	$_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11+16, _ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11(%rip)
.Ltmp508:
	movl	$_ZZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	movl	$.L.str.30, %esi
	movl	$.L.str.30+13, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
.Ltmp509:
# %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	.LBB38_4
.LBB38_8:                               # %.critedge17
.Ltmp510:
	movq	%rax, %rbx
	movl	$_ZGVZNK6thrust6system6detail22generic_error_category7messageB5cxx11EiE11unknown_errB5cxx11, %edi
	callq	__cxa_guard_abort
	movq	%rbx, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end38:
	.size	_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei, .Lfunc_end38-_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei
	.cfi_endproc
	.section	.gcc_except_table._ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,"aG",@progbits,_ZNK6thrust6system6detail22generic_error_category7messageB5cxx11Ei,comdat
	.p2align	2, 0x0
GCC_except_table38:
.Lexception7:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end7-.Lcst_begin7
.Lcst_begin7:
	.uleb128 .Lfunc_begin7-.Lfunc_begin7    # >> Call Site 1 <<
	.uleb128 .Ltmp508-.Lfunc_begin7         #   Call between .Lfunc_begin7 and .Ltmp508
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp508-.Lfunc_begin7         # >> Call Site 2 <<
	.uleb128 .Ltmp509-.Ltmp508              #   Call between .Ltmp508 and .Ltmp509
	.uleb128 .Ltmp510-.Lfunc_begin7         #     jumps to .Ltmp510
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp509-.Lfunc_begin7         # >> Call Site 3 <<
	.uleb128 .Lfunc_end38-.Ltmp509          #   Call between .Ltmp509 and .Lfunc_end38
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end7:
	.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	.LBB39_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	.LBB39_3
.LBB39_1:                               # %._crit_edge
	movq	(%rbx), %rax
.LBB39_3:
	testq	%r14, %r14
	je	.LBB39_7
# %bb.4:
	cmpq	$1, %r14
	jne	.LBB39_6
# %bb.5:
	movb	(%r15), %cl
	movb	%cl, (%rax)
	jmp	.LBB39_7
.LBB39_6:
	movq	%rax, %rdi
	movq	%r15, %rsi
	movq	%r14, %rdx
	callq	memcpy@PLT
.LBB39_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_end39:
	.size	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag, .Lfunc_end39-_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag
	.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	.LBB40_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i.i
	callq	_ZdlPv
.LBB40_2:                               # %_ZN6thrust6system12system_errorD2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorD2Ev
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end40:
	.size	_ZN6thrust6system12system_errorD0Ev, .Lfunc_end40-_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_begin8:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception8
# %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	.LBB41_3
.LBB41_1:
	movq	(%r14), %rbx
.LBB41_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
.LBB41_3:
	.cfi_def_cfa_offset 80
	movq	%rdi, %rbx
	callq	_ZNKSt13runtime_error4whatEv
	movq	%rax, %r15
	movq	40(%rbx), %r12
	movq	%rax, %rdi
	callq	strlen
.Ltmp511:
	movq	%r14, %rdi
	xorl	%esi, %esi
	movq	%r12, %rdx
	movq	%r15, %rcx
	movq	%rax, %r8
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm
.Ltmp512:
# %bb.4:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEPKc.exit
	movl	16(%rbx), %edx
	testl	%edx, %edx
	je	.LBB41_1
# %bb.5:
	cmpq	$0, 40(%rbx)
	je	.LBB41_8
# %bb.6:
.Ltmp513:
	movl	$.L.str.33, %esi
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp514:
# %bb.7:                                # %._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit_crit_edge
	movl	16(%rbx), %edx
.LBB41_8:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit
	movq	24(%rbx), %rsi
	movq	(%rsi), %rax
.Ltmp516:
	leaq	8(%rsp), %rdi
	callq	*48(%rax)
.Ltmp517:
# %bb.9:                                # %_ZNK6thrust6system10error_code7messageB5cxx11Ev.exit
	movq	8(%rsp), %rsi
	movq	16(%rsp), %rdx
.Ltmp519:
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm
.Ltmp520:
# %bb.10:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_.exit
	leaq	24(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB41_1
# %bb.11:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
	jmp	.LBB41_1
.LBB41_12:
.Ltmp521:
	movq	%rax, %r14
	leaq	24(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB41_17
# %bb.13:                               # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i4
	callq	_ZdlPv
	jmp	.LBB41_17
.LBB41_14:
.Ltmp518:
	jmp	.LBB41_16
.LBB41_15:
.Ltmp515:
.LBB41_16:
	movq	%rax, %r14
.LBB41_17:
	movq	%r14, %rdi
	callq	__cxa_begin_catch
	movq	%rbx, %rdi
	callq	_ZNKSt13runtime_error4whatEv
	movq	%rax, %rbx
.Ltmp522:
	callq	__cxa_end_catch
.Ltmp523:
	jmp	.LBB41_2
.LBB41_18:
.Ltmp524:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end41:
	.size	_ZNK6thrust6system12system_error4whatEv, .Lfunc_end41-_ZNK6thrust6system12system_error4whatEv
	.cfi_endproc
	.section	.gcc_except_table._ZNK6thrust6system12system_error4whatEv,"aG",@progbits,_ZNK6thrust6system12system_error4whatEv,comdat
	.p2align	2, 0x0
GCC_except_table41:
.Lexception8:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase5-.Lttbaseref5
.Lttbaseref5:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end8-.Lcst_begin8
.Lcst_begin8:
	.uleb128 .Ltmp511-.Lfunc_begin8         # >> Call Site 1 <<
	.uleb128 .Ltmp514-.Ltmp511              #   Call between .Ltmp511 and .Ltmp514
	.uleb128 .Ltmp515-.Lfunc_begin8         #     jumps to .Ltmp515
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp516-.Lfunc_begin8         # >> Call Site 2 <<
	.uleb128 .Ltmp517-.Ltmp516              #   Call between .Ltmp516 and .Ltmp517
	.uleb128 .Ltmp518-.Lfunc_begin8         #     jumps to .Ltmp518
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp519-.Lfunc_begin8         # >> Call Site 3 <<
	.uleb128 .Ltmp520-.Ltmp519              #   Call between .Ltmp519 and .Ltmp520
	.uleb128 .Ltmp521-.Lfunc_begin8         #     jumps to .Ltmp521
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp520-.Lfunc_begin8         # >> Call Site 4 <<
	.uleb128 .Ltmp522-.Ltmp520              #   Call between .Ltmp520 and .Ltmp522
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp522-.Lfunc_begin8         # >> Call Site 5 <<
	.uleb128 .Ltmp523-.Ltmp522              #   Call between .Ltmp522 and .Ltmp523
	.uleb128 .Ltmp524-.Lfunc_begin8         #     jumps to .Ltmp524
	.byte	1                               #   On action: 1
.Lcst_end8:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase5:
	.p2align	2, 0x0
                                        # -- End function
	.section	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
.LCPI42_0:
	.quad	0x41cdcd6500000000              # double 1.0E+9
.LCPI42_1:
	.quad	0x408f400000000000              # double 1000
	.section	.text._ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,"axG",@progbits,_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,comdat
	.weak	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.type	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,@function
_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb: # @_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.cfi_startproc
# %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	$1656, %rsp                     # imm = 0x678
	.cfi_def_cfa_offset 1712
	.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	%r9, %rbx
	movq	%rsi, %r13
	movq	%rdi, %r12
	movq	1712(%rsp), %rdi
	movq	%rdx, 136(%rsp)
	movq	%rcx, 128(%rsp)
	movl	%r8d, 36(%rsp)
	testq	$-3, %rdi
	jne	.LBB42_1
# %bb.3:                                # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.i
	leaq	160(%rsp), %rdi
	callq	hipGetDevice
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.4:                                # %thread-pre-split.i
	movl	160(%rsp), %esi
	jmp	.LBB42_5
.LBB42_1:
	callq	hipGetStreamDeviceId
	movl	%eax, %esi
	movl	%eax, 160(%rsp)
	testl	%eax, %eax
	js	.LBB42_2
.LBB42_5:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread.i
	movl	$999, %eax                      # imm = 0x3E7
	cmpl	$511, %esi                      # imm = 0x1FF
	ja	.LBB42_85
# %bb.6:
	movl	%esi, %r15d
	movl	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%r15,4), %eax
	testl	%eax, %eax
	je	.LBB42_7
.LBB42_9:
	leaq	160(%rsp), %rbp
	movq	%rbp, %rdi
	movl	%eax, %esi
	callq	_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE
	movl	(%rbp), %r14d
	movl	8(%rbp), %r15d
	movl	%r14d, 8(%rsp)
	imull	4(%rbp), %r14d
	movl	%r15d, %eax
	xorl	%edx, %edx
	divl	%r14d
                                        # kill: def $edx killed $edx def $rdx
	subq	%rdx, %r15
	cmpq	%r14, %r15
	cmovbeq	%r14, %r15
	cmpq	%rbx, %r15
	movq	%rbx, %rax
	cmovbq	%r15, %rax
	movq	%rax, 24(%rsp)                  # 8-byte Spill
	addq	%r14, %rax
	decq	%rax
	xorl	%edx, %edx
	divq	%r14
	movq	%rax, %rbp
	movl	%ebp, 4(%rsp)
	movq	1712(%rsp), %rdi
	testq	$-3, %rdi
	jne	.LBB42_10
# %bb.11:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.i.i.i
	leaq	88(%rsp), %rdi
	callq	hipGetDevice
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.12:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit._ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread_crit_edge.i.i.i
	movl	88(%rsp), %esi
	jmp	.LBB42_13
.LBB42_7:
	leaq	184(%rsp), %rdi
	callq	hipGetDevicePropertiesR0600
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.8:                                # %_ZN7rocprim6detail16host_target_archEP12ihipStream_tRNS0_11target_archE.exit.thread235
	leaq	1344(%rsp), %r14
	leaq	1600(%rsp), %rsi
	movq	%r14, %rdi
	callq	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	subq	%r14, %rax
	movq	%r14, %rdi
	movq	%rax, %rsi
	callq	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	movl	%eax, %ecx
	xchgl	%ecx, _ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%r15,4)
	jmp	.LBB42_9
.LBB42_10:
	callq	hipGetStreamDeviceId
	movl	%eax, %esi
	movl	%eax, 88(%rsp)
	testl	%eax, %eax
	js	.LBB42_2
.LBB42_13:                              # %_ZN7rocprim6detail19lookback_scan_stateIiLb0ELb1EE23get_temp_storage_layoutEjP12ihipStream_tRNS0_12temp_storage6layoutE.exit
	leaq	184(%rsp), %rdi
	callq	hipGetDevicePropertiesR0600
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.14:
	xorl	%eax, %eax
	cmpq	%rbx, %r15
	setbe	%al
	leaq	184(%rsp), %rdi
	addl	308(%rdi), %ebp
	shlq	$3, %rbp
	shll	$2, %eax
	leaq	152(%rsp), %rcx
	movq	%rcx, (%rdi)
	movq	%rbp, 8(%rdi)
	movq	$8, 16(%rdi)
	leaq	120(%rsp), %rcx
	movq	%rcx, 24(%rdi)
	movq	%rax, 32(%rdi)
	movl	$4, %ebp
	movq	%rbp, 40(%rdi)
	leaq	112(%rsp), %rcx
	movq	%rcx, 48(%rdi)
	movq	%rax, 56(%rdi)
	movq	%rbp, 64(%rdi)
	callq	_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv
	cmpq	$5, %rax
	cmovaeq	%rax, %rbp
	testq	%r12, %r12
	je	.LBB42_15
# %bb.16:
	movl	$1, %eax
	cmpq	%rbp, (%r13)
	jb	.LBB42_85
# %bb.17:                               # %_ZN7rocprim6detail12temp_storage9partitionINS1_16linear_partitionIJNS1_16simple_partitionIvEENS4_IiEES6_EEEEE10hipError_tPvRmT_.exit
	leaq	184(%rsp), %rdi
	movq	%r12, %rsi
	callq	_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv
	movl	4(%rsp), %eax
	testl	%eax, %eax
	je	.LBB42_85
# %bb.18:                               # %_ZN7rocprim6detail12temp_storage9partitionINS1_16linear_partitionIJNS1_16simple_partitionIvEENS4_IiEES6_EEEEE10hipError_tPvRmT_.exit
	movb	1720(%rsp), %r12b
	cmpl	$1, %eax
	jne	.LBB42_20
# %bb.19:
	cmpq	%rbx, %r15
	ja	.LBB42_74
.LBB42_20:
	movq	1712(%rsp), %rdi
	leaq	15(%rsp), %rsi
	callq	_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.21:
	movq	152(%rsp), %rax
	movb	15(%rsp), %cl
	movb	%cl, 88(%rsp)
	movq	%rax, 96(%rsp)
	movq	%rax, 104(%rsp)
	testb	%r12b, %r12b
	je	.LBB42_22
# %bb.23:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	jmp	.LBB42_24
.LBB42_2:
	movl	$400, %eax                      # imm = 0x190
.LBB42_85:
	addq	$1656, %rsp                     # imm = 0x678
	.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
.LBB42_15:
	.cfi_def_cfa_offset 1712
	movq	%rbp, (%r13)
.LBB42_84:
	xorl	%eax, %eax
	jmp	.LBB42_85
.LBB42_74:
	testb	%r12b, %r12b
	je	.LBB42_75
# %bb.76:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%rbx, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
	jmp	.LBB42_77
.LBB42_22:
	xorl	%eax, %eax
.LBB42_24:
	movq	%rax, 40(%rsp)                  # 8-byte Spill
	movq	24(%rsp), %rdi                  # 8-byte Reload
	leaq	-1(%rbx), %rcx
	leaq	(%rcx,%rdi), %rax
	xorl	%esi, %esi
	xorl	%edx, %edx
	divq	%rdi
	movq	%rax, 64(%rsp)
	movq	%rsi, 56(%rsp)
	movq	%rsi, 80(%rsp)
	addq	%rdi, %rcx
	jb	.LBB42_84
# %bb.25:                               # %.lr.ph
	leaq	-1(%r14), %rax
	movq	%rax, 144(%rsp)                 # 8-byte Spill
	xorl	%ecx, %ecx
	leaq	184(%rsp), %r13
.LBB42_26:                              # =>This Inner Loop Header: Depth=1
	movq	%rbx, %rax
	subq	%rcx, %rax
	cmpq	%rdi, %rax
	cmovaeq	%rdi, %rax
	movq	%rax, 48(%rsp)
	addq	144(%rsp), %rax                 # 8-byte Folded Reload
	xorl	%edx, %edx
	divq	%r14
	movl	%eax, 4(%rsp)
	movl	8(%rsp), %ecx
	addl	%ecx, %eax
	decl	%eax
	xorl	%edx, %edx
	divl	%ecx
	movl	%eax, 16(%rsp)
	testb	%r12b, %r12b
	je	.LBB42_52
# %bb.27:                               #   in Loop: Header=BB42_26 Depth=1
	xorl	%ebp, %ebp
	cmpq	%rbx, %r15
	setbe	%bpl
	movl	$_ZSt4cout, %edi
	movl	$.L.str.34, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	%ebp, %esi
	callq	_ZNSo9_M_insertIbEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_29
# %bb.28:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_30
.LBB42_29:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_30:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.35, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_32
# %bb.31:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_33
.LBB42_32:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_33:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit138
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.36, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	64(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_35
# %bb.34:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_36
.LBB42_35:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_36:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit141
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.37, %esi
	movl	$6, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	56(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_38
# %bb.37:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_39
.LBB42_38:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_39:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit144
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_41
# %bb.40:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_42
.LBB42_41:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_42:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit147
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_44
# %bb.43:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_45
.LBB42_44:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_45:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit150
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_47
# %bb.46:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_48
.LBB42_47:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_48:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit153
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB42_50
# %bb.49:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB42_51
.LBB42_50:                              #   in Loop: Header=BB42_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB42_51:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit156
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	16(%rsp), %eax
	movl	8(%rsp), %ecx
.LBB42_52:                              #   in Loop: Header=BB42_26 Depth=1
	movl	%eax, %edi
	movabsq	$4294967296, %rax               # imm = 0x100000000
	orq	%rax, %rdi
	movl	%ecx, %edx
	orq	%rax, %rdx
	cmpb	$0, 88(%rsp)
	movq	1712(%rsp), %r9
	je	.LBB42_55
# %bb.53:                               #   in Loop: Header=BB42_26 Depth=1
	movq	104(%rsp), %rbp
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB42_57
# %bb.54:                               #   in Loop: Header=BB42_26 Depth=1
	movl	4(%rsp), %esi
	movq	%rbp, %rdi
	xorl	%edx, %edx
	xorl	%ecx, %ecx
	callq	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	jmp	.LBB42_57
.LBB42_55:                              #   in Loop: Header=BB42_26 Depth=1
	movq	96(%rsp), %rbp
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB42_57
# %bb.56:                               #   in Loop: Header=BB42_26 Depth=1
	movl	4(%rsp), %esi
	movq	%rbp, %rdi
	xorl	%edx, %edx
	xorl	%ecx, %ecx
	callq	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
.LBB42_57:                              # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E_EEDcSI_.exit
                                        #   in Loop: Header=BB42_26 Depth=1
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB42_61
# %bb.58:                               # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E_EEDcSI_.exit
                                        #   in Loop: Header=BB42_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB42_61
# %bb.59:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.42, %esi
	movl	$31, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.60:                               # %.thread
                                        #   in Loop: Header=BB42_26 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	40(%rsp), %rax                  # 8-byte Folded Reload
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI42_0(%rip), %xmm0
	movsd	%xmm0, 72(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	72(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI42_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbp
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbp, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB42_62
.LBB42_61:                              #   in Loop: Header=BB42_26 Depth=1
	testl	%eax, %eax
	jne	.LBB42_85
.LBB42_62:                              #   in Loop: Header=BB42_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB42_64
# %bb.63:                               #   in Loop: Header=BB42_26 Depth=1
	xorl	%ebp, %ebp
	cmpq	%rbx, %r15
	setbe	%bpl
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, 40(%rsp)                  # 8-byte Spill
	movl	4(%rsp), %eax
	movl	%eax, 16(%rsp)
	movl	$_ZSt4cout, %edi
	movl	$.L.str.34, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	%ebp, %esi
	callq	_ZNSo9_M_insertIbEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.35, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB42_65
.LBB42_64:                              # %.critedge
                                        #   in Loop: Header=BB42_26 Depth=1
	movl	4(%rsp), %eax
	movl	%eax, 16(%rsp)
.LBB42_65:                              #   in Loop: Header=BB42_26 Depth=1
	leaq	16(%rsp), %rax
	movq	%rax, 184(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 192(%rsp)
	leaq	1712(%rsp), %rax
	movq	%rax, 200(%rsp)
	leaq	136(%rsp), %rax
	movq	%rax, 208(%rsp)
	leaq	80(%rsp), %rax
	movq	%rax, 216(%rsp)
	leaq	128(%rsp), %rax
	movq	%rax, 224(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 232(%rsp)
	leaq	36(%rsp), %rax
	movq	%rax, 240(%rsp)
	leaq	23(%rsp), %rax
	movq	%rax, 248(%rsp)
	leaq	4(%rsp), %rax
	movq	%rax, 256(%rsp)
	leaq	120(%rsp), %rax
	movq	%rax, 264(%rsp)
	leaq	112(%rsp), %rax
	movq	%rax, 272(%rsp)
	leaq	56(%rsp), %rax
	movq	%rax, 280(%rsp)
	leaq	64(%rsp), %rax
	movq	%rax, 288(%rsp)
	leaq	88(%rsp), %rdi
	movq	%r13, %rsi
	callq	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB42_69
# %bb.66:                               #   in Loop: Header=BB42_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB42_69
# %bb.67:                               #   in Loop: Header=BB42_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.47, %esi
	movl	$20, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.68:                               # %.thread249
                                        #   in Loop: Header=BB42_26 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	40(%rsp), %rax                  # 8-byte Folded Reload
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI42_0(%rip), %xmm0
	movsd	%xmm0, 72(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	72(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI42_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbp
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbp, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB42_70
.LBB42_69:                              #   in Loop: Header=BB42_26 Depth=1
	testl	%eax, %eax
	jne	.LBB42_85
.LBB42_70:                              #   in Loop: Header=BB42_26 Depth=1
	movq	64(%rsp), %rax
	cmpq	$1, %rax
	jbe	.LBB42_73
# %bb.71:                               #   in Loop: Header=BB42_26 Depth=1
	movq	112(%rsp), %rdi
	movq	120(%rsp), %rsi
	movq	1712(%rsp), %rcx
	movzbl	%r12b, %r8d
	movl	$1, %edx
	callq	_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.72:                               # %._crit_edge282
                                        #   in Loop: Header=BB42_26 Depth=1
	movq	64(%rsp), %rax
.LBB42_73:                              #   in Loop: Header=BB42_26 Depth=1
	movq	56(%rsp), %rdx
	incq	%rdx
	movq	%rdx, 56(%rsp)
	movq	80(%rsp), %rcx
	movq	24(%rsp), %rdi                  # 8-byte Reload
	addq	%rdi, %rcx
	movq	%rcx, 80(%rsp)
	cmpq	%rax, %rdx
	jb	.LBB42_26
	jmp	.LBB42_84
.LBB42_75:
	xorl	%r14d, %r14d
.LBB42_77:
	movl	8(%rsp), %edx
	movq	1712(%rsp), %r9
	btsq	$32, %rdx
	movabsq	$4294967296, %rdi               # imm = 0x100000000
	orq	$1, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB42_79
# %bb.78:
	movq	136(%rsp), %rdi
	movl	36(%rsp), %edx
	movq	128(%rsp), %rcx
	movq	%rbx, %rsi
	callq	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
.LBB42_79:
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB42_83
# %bb.80:
	testb	%r12b, %r12b
	je	.LBB42_83
# %bb.81:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.48, %esi
	movl	$18, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%rbx, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB42_85
# %bb.82:                               # %.critedge119.thread
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	%r14, %rax
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI42_0(%rip), %xmm0
	movsd	%xmm0, 24(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	24(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI42_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbx
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbx, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB42_84
.LBB42_83:                              # %.critedge119
	testl	%eax, %eax
	jne	.LBB42_85
	jmp	.LBB42_84
.Lfunc_end42:
	.size	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb, .Lfunc_end42-_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE,"axG",@progbits,_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE,comdat
	.weak	_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE # -- Begin function _ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE
	.type	_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE,@function
_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE: # @_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE
	.cfi_startproc
# %bb.0:
	movq	%rdi, %rax
	cmpl	$907, %esi                      # imm = 0x38B
	jle	.LBB43_1
# %bb.8:
	cmpl	$1029, %esi                     # imm = 0x405
	jle	.LBB43_9
# %bb.12:
	cmpl	$1030, %esi                     # imm = 0x406
	je	.LBB43_20
# %bb.13:
	cmpl	$1100, %esi                     # imm = 0x44C
	je	.LBB43_21
# %bb.14:
	cmpl	$1102, %esi                     # imm = 0x44E
	jne	.LBB43_16
# %bb.15:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_1:
	cmpl	$899, %esi                      # imm = 0x383
	jg	.LBB43_5
# %bb.2:
	cmpl	$-1, %esi
	je	.LBB43_16
# %bb.3:
	cmpl	$803, %esi                      # imm = 0x323
	jne	.LBB43_16
# %bb.4:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_5:
	cmpl	$900, %esi                      # imm = 0x384
	je	.LBB43_18
# %bb.6:
	cmpl	$906, %esi                      # imm = 0x38A
	jne	.LBB43_16
# %bb.7:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE(%rip), %xmm0
	movups	%xmm0, (%rax)
	movabsq	$4294967299, %rcx               # imm = 0x100000003
	movq	%rcx, 16(%rax)
	retq
.LBB43_9:
	cmpl	$908, %esi                      # imm = 0x38C
	je	.LBB43_19
# %bb.10:
	cmpl	$910, %esi                      # imm = 0x38E
	jne	.LBB43_16
# %bb.11:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_16:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_18:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_20:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_19:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE(%rip), %xmm0
	jmp	.LBB43_17
.LBB43_21:
	movups	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE(%rip), %xmm0
.LBB43_17:
	movups	%xmm0, (%rax)
	movq	$3, 16(%rax)
	retq
.Lfunc_end43:
	.size	_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE, .Lfunc_end43-_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb,"axG",@progbits,_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb,comdat
	.weak	_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb # -- Begin function _ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb
	.type	_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb,@function
_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb: # @_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb
	.cfi_startproc
# %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	$1520, %rsp                     # imm = 0x5F0
	.cfi_def_cfa_offset 1568
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movq	%rsi, %rbx
	testq	$-3, %rdi
	jne	.LBB44_1
# %bb.3:                                # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit
	leaq	12(%rsp), %rdi
	callq	hipGetDevice
	movl	%eax, %r14d
	testl	%eax, %eax
	jne	.LBB44_8
# %bb.4:                                # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit._ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread_crit_edge
	movl	12(%rsp), %esi
	jmp	.LBB44_5
.LBB44_1:
	callq	hipGetStreamDeviceId
	movl	%eax, %esi
	movl	%eax, 12(%rsp)
	testl	%eax, %eax
	js	.LBB44_2
.LBB44_5:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread
	leaq	48(%rsp), %rdi
	callq	hipGetDevicePropertiesR0600
	movl	%eax, %r14d
	testl	%eax, %eax
	jne	.LBB44_8
# %bb.6:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.exit
	leaq	1208(%rsp), %r14
	movl	308(%r14), %ebp
	leaq	32(%rsp), %r12
	movq	%r12, -16(%r12)
	movq	%r14, %rdi
	callq	strlen
	leaq	(%rsp,%rax), %rdx
	addq	$1208, %rdx                     # imm = 0x4B8
	leaq	16(%rsp), %r15
	movq	%r15, %rdi
	movq	%r14, %rsi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
	xorl	%r14d, %r14d
	movl	$.L.str.57, %esi
	movl	$3, %ecx
	movq	%r15, %rdi
	xorl	%edx, %edx
	callq	_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcmm
	cmpq	$-1, %rax
	setne	%al
	cmpl	$2, %ebp
	setl	%cl
	andb	%al, %cl
	movb	%cl, (%rbx)
	movq	(%r15), %rdi
	cmpq	%r12, %rdi
	je	.LBB44_8
# %bb.7:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
	jmp	.LBB44_8
.LBB44_2:
	movl	$400, %r14d                     # imm = 0x190
.LBB44_8:                               # %.thread
	movl	%r14d, %eax
	addq	$1520, %rsp                     # imm = 0x5F0
	.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
.Lfunc_end44:
	.size	_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb, .Lfunc_end44-_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,"axG",@progbits,_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,comdat
	.weak	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_ # -- Begin function _ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.p2align	1, 0x90
	.type	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,@function
_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_: # @_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.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
	movq	%rsi, %rbx
	movq	%rdi, %rax
	movq	(%rsi), %rcx
	movq	8(%rsi), %rdx
	movl	(%rcx), %edi
	movl	(%rdx), %edx
	btsq	$32, %rdi
	btsq	$32, %rdx
	cmpb	$0, (%rax)
	movq	16(%rsi), %rcx
	movq	(%rcx), %r9
	je	.LBB45_5
# %bb.1:
	movq	16(%rax), %r14
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB45_7
# %bb.2:
	movq	24(%rbx), %rax
	movq	32(%rbx), %rcx
	movq	(%rcx), %rsi
	shlq	$2, %rsi
	movq	(%rax), %rdi
	addq	%rsi, %rdi
	movq	40(%rbx), %rax
	addq	(%rax), %rsi
	movq	48(%rbx), %rax
	movq	(%rax), %rdx
	movq	56(%rbx), %rax
	movl	(%rax), %ecx
	movq	72(%rbx), %rax
	movl	(%rax), %r9d
	movq	80(%rbx), %rax
	movq	88(%rbx), %r10
	movq	96(%rbx), %r8
	xorl	%r11d, %r11d
	cmpq	$0, (%r8)
	setne	%r11b
	movq	104(%rbx), %r8
	xorl	%ebx, %ebx
	cmpq	$2, (%r8)
	setae	%bl
	movq	%r14, %r8
	pushq	%rbx
	.cfi_adjust_cfa_offset 8
	pushq	%r11
	.cfi_adjust_cfa_offset 8
	pushq	(%r10)
	.cfi_adjust_cfa_offset 8
	pushq	(%rax)
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	jmp	.LBB45_3
.LBB45_5:
	.cfi_def_cfa_offset 32
	movq	8(%rax), %r14
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	je	.LBB45_6
.LBB45_7:                               # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENKUlT_E0_clINS0_19lookback_scan_stateIiLb1ELb1EEEEEDaSH_.exit
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	jmp	.LBB45_4
.LBB45_6:
	.cfi_def_cfa_offset 32
	movq	24(%rbx), %rax
	movq	32(%rbx), %rcx
	movq	(%rcx), %rsi
	shlq	$2, %rsi
	movq	(%rax), %rdi
	addq	%rsi, %rdi
	movq	40(%rbx), %rax
	addq	(%rax), %rsi
	movq	48(%rbx), %rax
	movq	(%rax), %rdx
	movq	56(%rbx), %rax
	movl	(%rax), %ecx
	movq	72(%rbx), %rax
	movl	(%rax), %r9d
	movq	80(%rbx), %rax
	movq	88(%rbx), %r10
	movq	96(%rbx), %r8
	xorl	%r11d, %r11d
	cmpq	$0, (%r8)
	setne	%r11b
	movq	104(%rbx), %r8
	xorl	%ebx, %ebx
	cmpq	$2, (%r8)
	setae	%bl
	movq	%r14, %r8
	pushq	%rbx
	.cfi_adjust_cfa_offset 8
	pushq	%r11
	.cfi_adjust_cfa_offset 8
	pushq	(%r10)
	.cfi_adjust_cfa_offset 8
	pushq	(%rax)
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
.LBB45_3:
	addq	$40, %rsp
	.cfi_adjust_cfa_offset -40
.LBB45_4:
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end45:
	.size	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_, .Lfunc_end45-_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb1ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb1ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.cfi_endproc
                                        # -- End function
	.section	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
.LCPI46_0:
	.quad	0x41cdcd6500000000              # double 1.0E+9
.LCPI46_1:
	.quad	0x408f400000000000              # double 1000
	.section	.text._ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb,"axG",@progbits,_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb,comdat
	.weak	_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
	.type	_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb,@function
_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb: # @_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
	.cfi_startproc
# %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	$1560, %rsp                     # imm = 0x618
	.cfi_def_cfa_offset 1616
	.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	%r8d, 8(%rsp)                   # 4-byte Spill
	testq	%rdx, %rdx
	je	.LBB46_1
# %bb.2:
	movq	%rcx, %r14
	movq	%rdx, %rbp
	movq	%rsi, %r15
	movq	%rdi, %r12
	testq	$-3, %rcx
	jne	.LBB46_3
# %bb.5:                                # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.i
	leaq	12(%rsp), %rdi
	callq	hipGetDevice
	movl	%eax, %r13d
	testl	%eax, %eax
	jne	.LBB46_41
# %bb.6:                                # %thread-pre-split.i
	movl	12(%rsp), %eax
	jmp	.LBB46_7
.LBB46_1:
	xorl	%r13d, %r13d
	jmp	.LBB46_41
.LBB46_3:
	movq	%r14, %rdi
	callq	hipGetStreamDeviceId
	movl	%eax, 12(%rsp)
	testl	%eax, %eax
	js	.LBB46_4
.LBB46_7:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread.i
	movl	$999, %r13d                     # imm = 0x3E7
	cmpl	$511, %eax                      # imm = 0x1FF
	ja	.LBB46_41
# %bb.8:
	movl	%eax, %ebx
	movl	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%rbx,4), %edi
	testl	%edi, %edi
	je	.LBB46_10
# %bb.9:                                # %_ZN7rocprim6detail16host_target_archEP12ihipStream_tRNS0_11target_archE.exit.thread102
	movq	%r12, 32(%rsp)                  # 8-byte Spill
	movq	%r15, 40(%rsp)                  # 8-byte Spill
.LBB46_12:
	callq	_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE
	movq	%rax, %rsi
	movl	%edx, %eax
	movq	%rsi, %rcx
	shrq	$32, %rcx
	movq	%rsi, 16(%rsp)                  # 8-byte Spill
	imull	%esi, %ecx
	xorl	%r13d, %r13d
	xorl	%edx, %edx
	divl	%ecx
	movl	%eax, %r12d
	cmpl	$1, %eax
	adcl	$0, %r12d
	leaq	-1(%rbp), %rbx
	cmpb	$0, 8(%rsp)                     # 1-byte Folded Reload
	movq	%rcx, 24(%rsp)                  # 8-byte Spill
	je	.LBB46_26
# %bb.13:
	leaq	(%rbx,%rcx), %rax
	xorl	%edx, %edx
	divq	%rcx
	movq	%rax, %r15
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	16(%rsp), %esi                  # 4-byte Reload
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 88(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB46_15
# %bb.14:
	leaq	88(%rsp), %rsi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB46_16
.LBB46_4:
	movl	$400, %r13d                     # imm = 0x190
	jmp	.LBB46_41
.LBB46_10:
	leaq	88(%rsp), %rdi
	movl	%eax, %esi
	callq	hipGetDevicePropertiesR0600
	testl	%eax, %eax
	je	.LBB46_11
.LBB46_35:                              # %_ZN7rocprim6detail16host_target_archEP12ihipStream_tRNS0_11target_archE.exit
	movl	%eax, %r13d
	jmp	.LBB46_41
.LBB46_15:
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB46_16:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 88(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB46_18
# %bb.17:
	leaq	88(%rsp), %rsi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB46_19
.LBB46_18:
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB46_19:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit73
	movl	$_ZSt4cout, %edi
	movl	$.L.str.58, %esi
	movl	$23, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r12, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 88(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB46_21
# %bb.20:
	leaq	88(%rsp), %rsi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB46_22
.LBB46_21:
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB46_22:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit76
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	24(%rsp), %rsi                  # 8-byte Reload
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 88(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB46_24
# %bb.23:
	leaq	88(%rsp), %rsi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB46_25
.LBB46_24:
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB46_25:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit79
	movq	24(%rsp), %rcx                  # 8-byte Reload
.LBB46_26:                              # %._crit_edge
	movq	%rbp, 80(%rsp)                  # 8-byte Spill
	imulq	%rcx, %r12
	leaq	(%rbx,%r12), %rax
	xorl	%edx, %edx
	divq	%r12
	movq	%rax, 72(%rsp)                  # 8-byte Spill
	addq	%r12, %rbx
	jb	.LBB46_41
# %bb.27:                               # %.lr.ph
	leaq	-1(%rcx), %rax
	movq	%rax, 64(%rsp)                  # 8-byte Spill
	movl	16(%rsp), %eax                  # 4-byte Reload
	btsq	$32, %rax
	movq	%rax, 16(%rsp)                  # 8-byte Spill
	xorl	%ebx, %ebx
	xorl	%ebp, %ebp
	xorl	%eax, %eax
	movq	%rax, 48(%rsp)                  # 8-byte Spill
.LBB46_28:                              # =>This Inner Loop Header: Depth=1
	movq	80(%rsp), %r15                  # 8-byte Reload
	subq	%rbp, %r15
	cmpq	%r12, %r15
	cmovaeq	%r12, %r15
	movq	64(%rsp), %rax                  # 8-byte Reload
	addq	%r15, %rax
	xorl	%edx, %edx
	divq	%rcx
	movq	%rax, %r13
	cmpb	$0, 8(%rsp)                     # 1-byte Folded Reload
	je	.LBB46_30
# %bb.29:                               #   in Loop: Header=BB46_28 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, 48(%rsp)                  # 8-byte Spill
.LBB46_30:                              #   in Loop: Header=BB46_28 Depth=1
	movl	%r13d, %edi
	movabsq	$4294967296, %rax               # imm = 0x100000000
	orq	%rax, %rdi
	movl	$1, %esi
	movq	16(%rsp), %rdx                  # 8-byte Reload
	movl	$1, %ecx
	xorl	%r8d, %r8d
	movq	%r14, %r9
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB46_32
# %bb.31:                               #   in Loop: Header=BB46_28 Depth=1
	movq	32(%rsp), %rax                  # 8-byte Reload
	leaq	(%rax,%rbp,4), %rdi
	movq	40(%rsp), %rax                  # 8-byte Reload
	leaq	(%rax,%rbp,4), %rdx
	movq	%r15, %rsi
	callq	_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
.LBB46_32:                              #   in Loop: Header=BB46_28 Depth=1
	callq	hipGetLastError
	movl	%eax, %r13d
	testl	%eax, %eax
	jne	.LBB46_38
# %bb.33:                               #   in Loop: Header=BB46_28 Depth=1
	cmpb	$0, 8(%rsp)                     # 1-byte Folded Reload
	je	.LBB46_38
# %bb.34:                               #   in Loop: Header=BB46_28 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.59, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%r14, %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB46_35
# %bb.36:                               #   in Loop: Header=BB46_28 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	48(%rsp), %rax                  # 8-byte Folded Reload
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI46_0(%rip), %xmm0
	movsd	%xmm0, 56(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	56(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI46_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %r15
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movb	$10, 88(%rsp)
	movq	(%r15), %rax
	movq	-24(%rax), %rax
	cmpq	$0, 16(%r15,%rax)
	je	.LBB46_39
# %bb.37:                               #   in Loop: Header=BB46_28 Depth=1
	movl	$1, %edx
	movq	%r15, %rdi
	leaq	88(%rsp), %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB46_40
.LBB46_38:                              #   in Loop: Header=BB46_28 Depth=1
	testl	%r13d, %r13d
	je	.LBB46_40
	jmp	.LBB46_41
.LBB46_39:                              #   in Loop: Header=BB46_28 Depth=1
	movq	%r15, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB46_40:                              #   in Loop: Header=BB46_28 Depth=1
	incq	%rbx
	addq	%r12, %rbp
	xorl	%r13d, %r13d
	cmpq	72(%rsp), %rbx                  # 8-byte Folded Reload
	movq	24(%rsp), %rcx                  # 8-byte Reload
	jb	.LBB46_28
.LBB46_41:                              # %.thread113
	movl	%r13d, %eax
	addq	$1560, %rsp                     # imm = 0x618
	.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
.LBB46_11:                              # %_ZN7rocprim6detail16host_target_archEP12ihipStream_tRNS0_11target_archE.exit.thread107
	.cfi_def_cfa_offset 1616
	movq	%r12, 32(%rsp)                  # 8-byte Spill
	movq	%r15, 40(%rsp)                  # 8-byte Spill
	leaq	1248(%rsp), %r15
	leaq	1504(%rsp), %rsi
	movq	%r15, %rdi
	callq	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	subq	%r15, %rax
	movq	%r15, %rdi
	movq	%rax, %rsi
	callq	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	movl	%eax, %edi
	xchgl	%eax, _ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%rbx,4)
	jmp	.LBB46_12
.Lfunc_end46:
	.size	_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb, .Lfunc_end46-_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
	.weak	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_ # -- Begin function _ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.type	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,@function
_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_: # @_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.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	%rcx, (%rdi)
	leaq	24(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	4(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdi, 24(%rbx)
	leaq	3(%rsp), %rax
	movq	%rax, 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	$_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, %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_end47:
	.size	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, .Lfunc_end47-_ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.cfi_endproc
                                        # -- End function
	.section	.rodata.cst16,"aM",@progbits,16
	.p2align	4, 0x0                          # -- Begin function _ZN7rocprim6detail25get_target_arch_from_nameEPKcm
.LCPI48_0:
	.long	803                             # 0x323
	.long	900                             # 0x384
	.long	906                             # 0x38a
	.long	908                             # 0x38c
.LCPI48_1:
	.long	910                             # 0x38e
	.long	1030                            # 0x406
	.long	1100                            # 0x44c
	.long	1102                            # 0x44e
	.section	.text._ZN7rocprim6detail25get_target_arch_from_nameEPKcm,"axG",@progbits,_ZN7rocprim6detail25get_target_arch_from_nameEPKcm,comdat
	.weak	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	.type	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm,@function
_ZN7rocprim6detail25get_target_arch_from_nameEPKcm: # @_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	.cfi_startproc
# %bb.0:
	movq	$.L.str.49, -104(%rsp)
	movq	$.L.str.50, -96(%rsp)
	movq	$.L.str.51, -88(%rsp)
	movq	$.L.str.52, -80(%rsp)
	movq	$.L.str.53, -72(%rsp)
	movq	$.L.str.54, -64(%rsp)
	movq	$.L.str.55, -56(%rsp)
	movq	$.L.str.56, -48(%rsp)
	movaps	.LCPI48_0(%rip), %xmm0          # xmm0 = [803,900,906,908]
	movaps	%xmm0, -40(%rsp)
	movaps	.LCPI48_1(%rip), %xmm0          # xmm0 = [910,1030,1100,1102]
	movaps	%xmm0, -24(%rsp)
	xorl	%eax, %eax
.LBB48_1:                               # =>This Loop Header: Depth=1
                                        #     Child Loop BB48_4 Depth 2
	movq	-104(%rsp,%rax,8), %rcx
	testq	%rsi, %rsi
	je	.LBB48_2
# %bb.3:                                # %.lr.ph.preheader.i
                                        #   in Loop: Header=BB48_1 Depth=1
	leaq	(%rcx,%rsi), %r8
	xorl	%edx, %edx
.LBB48_4:                               # %.lr.ph.i
                                        #   Parent Loop BB48_1 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	movb	(%rcx,%rdx), %r9b
	testb	%r9b, %r9b
	je	.LBB48_7
# %bb.5:                                # %.lr.ph.i
                                        #   in Loop: Header=BB48_4 Depth=2
	cmpb	(%rdi,%rdx), %r9b
	jne	.LBB48_7
# %bb.6:                                #   in Loop: Header=BB48_4 Depth=2
	incq	%rdx
	cmpq	%rdx, %rsi
	jne	.LBB48_4
	jmp	.LBB48_9
.LBB48_2:                               #   in Loop: Header=BB48_1 Depth=1
	xorl	%edx, %edx
	jmp	.LBB48_8
.LBB48_7:                               # %._crit_edge.i.loopexit
                                        #   in Loop: Header=BB48_1 Depth=1
	addq	%rdx, %rcx
.LBB48_8:                               # %._crit_edge.i
                                        #   in Loop: Header=BB48_1 Depth=1
	movq	%rcx, %r8
	cmpq	%rsi, %rdx
	jne	.LBB48_11
.LBB48_9:                               # %_ZN7rocprim6detail13prefix_equalsEPKcS2_m.exit
                                        #   in Loop: Header=BB48_1 Depth=1
	cmpb	$0, (%r8)
	je	.LBB48_10
.LBB48_11:                              # %_ZN7rocprim6detail13prefix_equalsEPKcS2_m.exit.thread
                                        #   in Loop: Header=BB48_1 Depth=1
	incq	%rax
	cmpq	$8, %rax
	jne	.LBB48_1
# %bb.12:
	movl	$-1, %eax
	retq
.LBB48_10:
	movl	-40(%rsp,%rax,4), %eax
	retq
.Lfunc_end48:
	.size	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm, .Lfunc_end48-_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	.cfi_endproc
                                        # -- End function
	.section	.text._ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag,"axG",@progbits,_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag,comdat
	.weak	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag # -- Begin function _ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	.type	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag,@function
_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag: # @_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	.cfi_startproc
# %bb.0:
	movq	%rdi, %rax
	movq	%rsi, %rcx
	subq	%rdi, %rcx
	movq	%rcx, %rdx
	sarq	$2, %rdx
	testq	%rdx, %rdx
	jle	.LBB49_12
# %bb.1:                                # %.lr.ph.preheader
	andq	$-4, %rcx
	addq	%rax, %rcx
	incq	%rdx
	addq	$3, %rax
.LBB49_2:                               # %.lr.ph
                                        # =>This Inner Loop Header: Depth=1
	movzbl	-3(%rax), %edi
	testl	%edi, %edi
	je	.LBB49_26
# %bb.3:                                # %.lr.ph
                                        #   in Loop: Header=BB49_2 Depth=1
	cmpl	$58, %edi
	je	.LBB49_26
# %bb.4:                                #   in Loop: Header=BB49_2 Depth=1
	movzbl	-2(%rax), %edi
	testl	%edi, %edi
	je	.LBB49_24
# %bb.5:                                #   in Loop: Header=BB49_2 Depth=1
	cmpl	$58, %edi
	je	.LBB49_24
# %bb.6:                                #   in Loop: Header=BB49_2 Depth=1
	movzbl	-1(%rax), %edi
	testl	%edi, %edi
	je	.LBB49_25
# %bb.7:                                #   in Loop: Header=BB49_2 Depth=1
	cmpl	$58, %edi
	je	.LBB49_25
# %bb.8:                                #   in Loop: Header=BB49_2 Depth=1
	movzbl	(%rax), %edi
	testl	%edi, %edi
	je	.LBB49_27
# %bb.9:                                #   in Loop: Header=BB49_2 Depth=1
	cmpl	$58, %edi
	je	.LBB49_27
# %bb.10:                               #   in Loop: Header=BB49_2 Depth=1
	decq	%rdx
	addq	$4, %rax
	cmpq	$1, %rdx
	jg	.LBB49_2
# %bb.11:                               # %._crit_edge.loopexit
	movq	%rcx, %rax
.LBB49_12:                              # %._crit_edge
	movq	%rsi, %rcx
	subq	%rax, %rcx
	cmpq	$1, %rcx
	je	.LBB49_21
# %bb.13:                               # %._crit_edge
	cmpq	$2, %rcx
	je	.LBB49_18
# %bb.14:                               # %._crit_edge
	cmpq	$3, %rcx
	jne	.LBB49_23
# %bb.15:
	movzbl	(%rax), %ecx
	testl	%ecx, %ecx
	je	.LBB49_27
# %bb.16:
	cmpl	$58, %ecx
	je	.LBB49_27
# %bb.17:
	incq	%rax
.LBB49_18:
	movzbl	(%rax), %ecx
	testl	%ecx, %ecx
	je	.LBB49_27
# %bb.19:
	cmpl	$58, %ecx
	je	.LBB49_27
# %bb.20:
	incq	%rax
.LBB49_21:
	movzbl	(%rax), %ecx
	testl	%ecx, %ecx
	je	.LBB49_27
# %bb.22:
	cmpl	$58, %ecx
	je	.LBB49_27
.LBB49_23:
	movq	%rsi, %rax
	retq
.LBB49_26:                              # %.loopexit.loopexit
	addq	$-3, %rax
.LBB49_27:                              # %.loopexit
	retq
.LBB49_24:                              # %.loopexit.loopexit.split.loop.exit
	addq	$-2, %rax
	retq
.LBB49_25:                              # %.loopexit.loopexit.split.loop.exit52
	decq	%rax
	retq
.Lfunc_end49:
	.size	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag, .Lfunc_end49-_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	.cfi_endproc
                                        # -- End function
	.section	.text._ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv,"axG",@progbits,_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv,comdat
	.weak	_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv # -- Begin function _ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv
	.p2align	1, 0x90
	.type	_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv,@function
_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv: # @_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv
	.cfi_startproc
# %bb.0:                                # %_ZZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEvENKUlRKT_E_clIS4_EEDaS9_.exit.i.i
	movq	8(%rdi), %rax
	movq	16(%rdi), %rsi
	movq	32(%rdi), %r8
	movq	40(%rdi), %rcx
	testq	%r8, %r8
	je	.LBB50_2
# %bb.1:
	xorl	%edx, %edx
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	imulq	%rcx, %rax
	addq	%r8, %rax
.LBB50_2:                               # %_ZZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEvENKUlRKT_E_clIS5_EEDaS9_.exit.i.i
	movq	56(%rdi), %r8
	movq	64(%rdi), %rdi
	testq	%r8, %r8
	je	.LBB50_4
# %bb.3:
	xorl	%edx, %edx
	divq	%rdi
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	imulq	%rdi, %rax
	addq	%r8, %rax
.LBB50_4:                               # %_ZN7rocprim6detail17for_each_in_tupleIRKNS_5tupleIJNS0_12temp_storage16simple_partitionIvEENS4_IiEES6_EEEZNKS3_16linear_partitionIJS5_S6_S6_EE10get_layoutEvEUlRKT_E_EEvOSC_OT0_.exit
	cmpq	%rcx, %rsi
	cmovaq	%rsi, %rcx
	cmpq	%rdi, %rcx
	cmovbeq	%rdi, %rcx
	cmpq	$1, %rcx
	adcq	$0, %rcx
	movq	%rcx, %rdx
	retq
.Lfunc_end50:
	.size	_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv, .Lfunc_end50-_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv,"axG",@progbits,_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv,comdat
	.weak	_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv # -- Begin function _ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv
	.p2align	1, 0x90
	.type	_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv,@function
_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv: # @_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv
	.cfi_startproc
# %bb.0:                                # %_ZZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPvENKUlRT_E_clIS4_EEDaS9_.exit.i.i
	movq	8(%rdi), %rax
	testq	%rax, %rax
	movq	%rsi, %rcx
	cmoveq	%rax, %rcx
	movq	(%rdi), %rdx
	movq	%rcx, (%rdx)
	movq	32(%rdi), %rcx
	testq	%rcx, %rcx
	je	.LBB51_1
# %bb.2:
	movq	40(%rdi), %r8
	xorl	%edx, %edx
	divq	%r8
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	imulq	%r8, %rax
	leaq	(%rsi,%rax), %rdx
	jmp	.LBB51_3
.LBB51_1:
	xorl	%edx, %edx
.LBB51_3:                               # %_ZZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPvENKUlRT_E_clIS5_EEDaS9_.exit.i.i
	movq	24(%rdi), %r8
	movq	%rdx, (%r8)
	cmpq	$0, 56(%rdi)
	je	.LBB51_4
# %bb.5:
	addq	%rcx, %rax
	movq	64(%rdi), %rcx
	xorl	%edx, %edx
	divq	%rcx
	cmpq	$1, %rdx
	sbbq	$-1, %rax
	imulq	%rcx, %rax
	addq	%rax, %rsi
	jmp	.LBB51_6
.LBB51_4:
	xorl	%esi, %esi
.LBB51_6:                               # %_ZN7rocprim6detail17for_each_in_tupleIRNS_5tupleIJNS0_12temp_storage16simple_partitionIvEENS4_IiEES6_EEEZNS3_16linear_partitionIJS5_S6_S6_EE11set_storageEPvEUlRT_E_EEvOSC_OT0_.exit
	movq	48(%rdi), %rax
	movq	%rsi, (%rax)
	retq
.Lfunc_end51:
	.size	_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv, .Lfunc_end51-_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
	.weak	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE # -- Begin function _ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.type	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,@function
_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE: # @_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.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	12(%rsp), %rdi
	movl	%esi, (%rdi)
	leaq	8(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	32(%rsp), %rdx
	movq	%rcx, (%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	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	$_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE, %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_end52:
	.size	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE, .Lfunc_end52-_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
	.weak	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE # -- Begin function _ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.type	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,@function
_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE: # @_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.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	12(%rsp), %rdi
	movl	%esi, (%rdi)
	leaq	8(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	32(%rsp), %rdx
	movq	%rcx, (%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	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	$_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE, %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_end53:
	.size	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE, .Lfunc_end53-_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.weak	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb # -- Begin function _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.type	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: # @_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.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	$192, %rsp
	.cfi_def_cfa_offset 240
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movb	264(%rsp), %al
	movb	256(%rsp), %r10b
	leaq	56(%rsp), %r11
	movq	%rdi, (%r11)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	40(%rsp), %rsi
	movq	%r8, (%rsi)
	leaq	32(%rsp), %r8
	movq	%rdx, (%r8)
	leaq	12(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	8(%rsp), %rcx
	movl	%r9d, (%rcx)
	leaq	6(%rsp), %r9
	movb	%r10b, (%r9)
	leaq	5(%rsp), %r10
	movb	%al, (%r10)
	leaq	96(%rsp), %rbx
	movq	%r11, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%r8, 16(%rbx)
	movq	%rdx, 24(%rbx)
	leaq	7(%rsp), %rax
	movq	%rax, 32(%rbx)
	movq	%rsi, 40(%rbx)
	movq	%rcx, 48(%rbx)
	leaq	240(%rsp), %rax
	movq	%rax, 56(%rbx)
	leaq	248(%rsp), %rax
	movq	%rax, 64(%rbx)
	movq	%r9, 72(%rbx)
	movq	%r10, 80(%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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$208, %rsp
	.cfi_adjust_cfa_offset -208
	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_end54:
	.size	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end54-_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.weak	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb # -- Begin function _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.type	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: # @_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.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	$192, %rsp
	.cfi_def_cfa_offset 240
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movb	264(%rsp), %al
	movb	256(%rsp), %r10b
	leaq	56(%rsp), %r11
	movq	%rdi, (%r11)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	40(%rsp), %rsi
	movq	%r8, (%rsi)
	leaq	32(%rsp), %r8
	movq	%rdx, (%r8)
	leaq	12(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	8(%rsp), %rcx
	movl	%r9d, (%rcx)
	leaq	6(%rsp), %r9
	movb	%r10b, (%r9)
	leaq	5(%rsp), %r10
	movb	%al, (%r10)
	leaq	96(%rsp), %rbx
	movq	%r11, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%r8, 16(%rbx)
	movq	%rdx, 24(%rbx)
	leaq	7(%rsp), %rax
	movq	%rax, 32(%rbx)
	movq	%rsi, 40(%rbx)
	movq	%rcx, 48(%rbx)
	leaq	240(%rsp), %rax
	movq	%rax, 56(%rbx)
	leaq	248(%rsp), %rax
	movq	%rax, 64(%rbx)
	movq	%r9, 72(%rbx)
	movq	%r10, 80(%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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$208, %rsp
	.cfi_adjust_cfa_offset -208
	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_end55:
	.size	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end55-_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE,"axG",@progbits,_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE,comdat
	.weak	_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE # -- Begin function _ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE
	.type	_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE,@function
_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE: # @_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE
	.cfi_startproc
# %bb.0:
	movabsq	$8589934720, %rax               # imm = 0x200000080
	cmpl	$1029, %edi                     # imm = 0x405
	jg	.LBB56_5
# %bb.1:
	cmpl	$803, %edi                      # imm = 0x323
	je	.LBB56_10
# %bb.2:
	cmpl	$900, %edi                      # imm = 0x384
	je	.LBB56_10
# %bb.3:
	cmpl	$906, %edi                      # imm = 0x38A
	jne	.LBB56_11
# %bb.4:
	addq	$896, %rax                      # imm = 0x380
	jmp	.LBB56_11
.LBB56_5:
	cmpl	$1030, %edi                     # imm = 0x406
	je	.LBB56_9
# %bb.6:
	cmpl	$1100, %edi                     # imm = 0x44C
	je	.LBB56_10
# %bb.7:
	cmpl	$1102, %edi                     # imm = 0x44E
	jne	.LBB56_11
# %bb.8:
	movabsq	$4294967552, %rax               # imm = 0x100000100
	addq	$768, %rax                      # imm = 0x300
	jmp	.LBB56_11
.LBB56_10:
	movabsq	$68719476992, %rax              # imm = 0x1000000100
	jmp	.LBB56_11
.LBB56_9:
	movabsq	$4294967552, %rax               # imm = 0x100000100
.LBB56_11:
	movl	$-1, %edx
	retq
.Lfunc_end56:
	.size	_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE, .Lfunc_end56-_ZN7rocprim6detail20dispatch_target_archINS0_24wrapped_transform_configINS_14default_configEiEEEEDaNS0_11target_archE
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,"axG",@progbits,_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,comdat
	.weak	_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_ # -- Begin function _ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.type	_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,@function
_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_: # @_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.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	24(%rsp), %rsi
	movq	%rdx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	leaq	7(%rsp), %rax
	movq	%rax, 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	$_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_, %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_end57:
	.size	_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_, .Lfunc_end57-_ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev,"axG",@progbits,_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev,comdat
	.weak	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev # -- Begin function _ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev,@function
_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev: # @_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
.Lfunc_begin9:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception9
# %bb.0:
	pushq	%rbx
	.cfi_def_cfa_offset 16
	.cfi_offset %rbx, -16
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.LBB58_3
# %bb.1:
	movq	%rdi, %rbx
	movq	8(%rdi), %rsi
.Ltmp525:
	callq	_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm
.Ltmp526:
# %bb.2:                                # %.noexc
	addq	$8, %rbx
	xorps	%xmm0, %xmm0
	movups	%xmm0, (%rbx)
.LBB58_3:                               # %_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEE10deallocateEv.exit
	popq	%rbx
	.cfi_def_cfa_offset 8
	retq
.LBB58_4:
	.cfi_def_cfa_offset 16
.Ltmp527:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end58:
	.size	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev, .Lfunc_end58-_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev,"aG",@progbits,_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev,comdat
	.p2align	2, 0x0
GCC_except_table58:
.Lexception9:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase6-.Lttbaseref6
.Lttbaseref6:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end9-.Lcst_begin9
.Lcst_begin9:
	.uleb128 .Ltmp525-.Lfunc_begin9         # >> Call Site 1 <<
	.uleb128 .Ltmp526-.Ltmp525              #   Call between .Ltmp525 and .Ltmp526
	.uleb128 .Ltmp527-.Lfunc_begin9         #     jumps to .Ltmp527
	.byte	1                               #   On action: 1
.Lcst_end9:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase6:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm,"axG",@progbits,_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm,comdat
	.weak	_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm # -- Begin function _ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm,@function
_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm: # @_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm
.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	%rbx
	.cfi_def_cfa_offset 40
	subq	$40, %rsp
	.cfi_def_cfa_offset 80
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	.cfi_offset %rbp, -16
	movq	%rsi, %r14
	movq	%rdi, %rbx
	movq	(%rdi), %rdi
	callq	_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm
	testq	%r14, %r14
	je	.LBB59_11
# %bb.1:
	testq	%rax, %rax
	je	.LBB59_2
.LBB59_11:
	addq	$40, %rsp
	.cfi_def_cfa_offset 40
	popq	%rbx
	.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_2:
	.cfi_def_cfa_offset 80
	movq	(%rbx), %rdi
	xorl	%esi, %esi
	callq	_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_
	movl	$40, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
	leaq	24(%rsp), %r15
	movq	%r15, -16(%r15)
.Ltmp528:
	leaq	8(%rsp), %rdi
	movl	$.L.str.60, %esi
	movl	$.L.str.60+55, %edx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag
.Ltmp529:
# %bb.3:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_.exit
	movb	$1, %bpl
.Ltmp531:
	leaq	8(%rsp), %rsi
	movq	%rbx, %rdi
	callq	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.Ltmp532:
# %bb.4:
	xorl	%ebp, %ebp
.Ltmp533:
	movl	$_ZTIN6thrust6system6detail9bad_allocE, %esi
	movl	$_ZN6thrust6system6detail9bad_allocD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp534:
# %bb.12:
.LBB59_6:
.Ltmp535:
	movq	%rax, %r14
	movq	8(%rsp), %rdi
	cmpq	%r15, %rdi
	je	.LBB59_8
# %bb.7:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	callq	_ZdlPv
.LBB59_8:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	testb	%bpl, %bpl
	jne	.LBB59_9
	jmp	.LBB59_10
.LBB59_5:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit.thread
.Ltmp530:
	movq	%rax, %r14
.LBB59_9:
	movq	%rbx, %rdi
	callq	__cxa_free_exception
.LBB59_10:
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end59:
	.size	_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm, .Lfunc_end59-_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm,"aG",@progbits,_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm,comdat
	.p2align	2, 0x0
GCC_except_table59:
.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 .Ltmp528-.Lfunc_begin10        #   Call between .Lfunc_begin10 and .Ltmp528
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp528-.Lfunc_begin10        # >> Call Site 2 <<
	.uleb128 .Ltmp529-.Ltmp528              #   Call between .Ltmp528 and .Ltmp529
	.uleb128 .Ltmp530-.Lfunc_begin10        #     jumps to .Ltmp530
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp531-.Lfunc_begin10        # >> Call Site 3 <<
	.uleb128 .Ltmp534-.Ltmp531              #   Call between .Ltmp531 and .Ltmp534
	.uleb128 .Ltmp535-.Lfunc_begin10        #     jumps to .Ltmp535
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp534-.Lfunc_begin10        # >> Call Site 4 <<
	.uleb128 .Lfunc_end59-.Ltmp534          #   Call between .Ltmp534 and .Lfunc_end59
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end10:
	.p2align	2, 0x0
                                        # -- 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_begin11:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception11
# %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
.Ltmp536:
	movq	%r14, %rdi
	xorl	%esi, %esi
	movq	%r13, %rdx
	movq	%r12, %rcx
	movq	%rax, %r8
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm
.Ltmp537:
# %bb.1:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEPKc.exit
.Ltmp538:
	movl	$.L.str.33, %esi
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc
.Ltmp539:
# %bb.2:                                # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc.exit
	movq	(%r15), %rsi
	movq	8(%r15), %rdx
.Ltmp540:
	movq	%r14, %rdi
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm
.Ltmp541:
# %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
.LBB60_4:
	.cfi_def_cfa_offset 64
.Ltmp542:
	movq	%rax, %r15
	movq	(%r14), %rdi
	cmpq	%rbp, %rdi
	je	.LBB60_6
# %bb.5:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB60_6:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt9bad_allocD2Ev
	movq	%r15, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end60:
	.size	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE, .Lfunc_end60-_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_table60:
.Lexception11:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end11-.Lcst_begin11
.Lcst_begin11:
	.uleb128 .Ltmp536-.Lfunc_begin11        # >> Call Site 1 <<
	.uleb128 .Ltmp541-.Ltmp536              #   Call between .Ltmp536 and .Ltmp541
	.uleb128 .Ltmp542-.Lfunc_begin11        #     jumps to .Ltmp542
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp541-.Lfunc_begin11        # >> Call Site 2 <<
	.uleb128 .Lfunc_end60-.Ltmp541          #   Call between .Ltmp541 and .Lfunc_end60
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end11:
	.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	.LBB61_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB61_2:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZNSt9bad_allocD2Ev             # TAILCALL
.Lfunc_end61:
	.size	_ZN6thrust6system6detail9bad_allocD2Ev, .Lfunc_end61-_ZN6thrust6system6detail9bad_allocD2Ev
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm,"axG",@progbits,_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm,comdat
	.weak	_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm # -- Begin function _ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm
	.type	_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm,@function
_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm: # @_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm
.Lfunc_begin12:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception12
# %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
	movq	$0, (%rdi)
	callq	hipMalloc
	testl	%eax, %eax
	jne	.LBB62_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
.LBB62_1:
	.cfi_def_cfa_offset 112
	movl	%eax, %ebp
	callq	hipGetLastError
	movl	$40, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp543:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp544:
# %bb.2:
	movq	(%rax), %rcx
.Ltmp545:
	leaq	16(%rsp), %rdi
	movq	%rax, %rsi
	movl	%ebp, %edx
	callq	*48(%rcx)
.Ltmp546:
# %bb.3:
	movq	16(%rsp), %rsi
.Ltmp548:
	leaq	48(%rsp), %rdi
	leaq	7(%rsp), %rdx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
.Ltmp549:
# %bb.4:
	movb	$1, %bpl
.Ltmp551:
	leaq	48(%rsp), %rsi
	movq	%rbx, %rdi
	callq	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.Ltmp552:
# %bb.5:
	xorl	%ebp, %ebp
.Ltmp553:
	movl	$_ZTIN6thrust6system6detail9bad_allocE, %esi
	movl	$_ZN6thrust6system6detail9bad_allocD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp554:
# %bb.17:
.LBB62_7:
.Ltmp555:
	movq	%rax, %r14
	leaq	64(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB62_9
# %bb.8:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB62_9:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB62_11
# %bb.10:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit14
	callq	_ZdlPv
.LBB62_11:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit14
	testb	%bpl, %bpl
	jne	.LBB62_14
	jmp	.LBB62_15
.LBB62_12:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit.thread
.Ltmp550:
	movq	%rax, %r14
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB62_14
# %bb.13:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit14.thread25
	callq	_ZdlPv
	jmp	.LBB62_14
.LBB62_6:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit14.thread
.Ltmp547:
	movq	%rax, %r14
.LBB62_14:
	movq	%rbx, %rdi
	callq	__cxa_free_exception
.LBB62_15:
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end62:
	.size	_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm, .Lfunc_end62-_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm,"aG",@progbits,_ZN6thrust11hip_rocprim6mallocINS0_3tagEEEPvRNS0_16execution_policyIT_EEm,comdat
	.p2align	2, 0x0
GCC_except_table62:
.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 .Ltmp543-.Lfunc_begin12        #   Call between .Lfunc_begin12 and .Ltmp543
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp543-.Lfunc_begin12        # >> Call Site 2 <<
	.uleb128 .Ltmp546-.Ltmp543              #   Call between .Ltmp543 and .Ltmp546
	.uleb128 .Ltmp547-.Lfunc_begin12        #     jumps to .Ltmp547
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp548-.Lfunc_begin12        # >> Call Site 3 <<
	.uleb128 .Ltmp549-.Ltmp548              #   Call between .Ltmp548 and .Ltmp549
	.uleb128 .Ltmp550-.Lfunc_begin12        #     jumps to .Ltmp550
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp551-.Lfunc_begin12        # >> Call Site 4 <<
	.uleb128 .Ltmp554-.Ltmp551              #   Call between .Ltmp551 and .Ltmp554
	.uleb128 .Ltmp555-.Lfunc_begin12        #     jumps to .Ltmp555
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp554-.Lfunc_begin12        # >> Call Site 5 <<
	.uleb128 .Lfunc_end62-.Ltmp554          #   Call between .Ltmp554 and .Lfunc_end62
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end12:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_,"axG",@progbits,_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_,comdat
	.weak	_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_ # -- Begin function _ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_
	.type	_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_,@function
_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_: # @_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_
.Lfunc_begin13:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception13
# %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
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB63_1
# %bb.5:                                # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB63_1:
	.cfi_def_cfa_offset 32
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp556:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp557:
# %bb.2:
.Ltmp558:
	movl	$.L.str.61, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp559:
# %bb.3:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB63_4:
.Ltmp560:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end63:
	.size	_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_, .Lfunc_end63-_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_,"aG",@progbits,_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_,comdat
	.p2align	2, 0x0
GCC_except_table63:
.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 .Ltmp556-.Lfunc_begin13        #   Call between .Lfunc_begin13 and .Ltmp556
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp556-.Lfunc_begin13        # >> Call Site 2 <<
	.uleb128 .Ltmp559-.Ltmp556              #   Call between .Ltmp556 and .Ltmp559
	.uleb128 .Ltmp560-.Lfunc_begin13        #     jumps to .Ltmp560
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp559-.Lfunc_begin13        # >> Call Site 3 <<
	.uleb128 .Lfunc_end63-.Ltmp559          #   Call between .Ltmp559 and .Lfunc_end63
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end13:
	.p2align	2, 0x0
                                        # -- 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	.LBB64_2
# %bb.1:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i.i
	callq	_ZdlPv
.LBB64_2:                               # %_ZN6thrust6system6detail9bad_allocD2Ev.exit
	movq	%rbx, %rdi
	callq	_ZNSt9bad_allocD2Ev
	movq	%rbx, %rdi
	popq	%rbx
	.cfi_def_cfa_offset 8
	jmp	_ZdlPv                          # TAILCALL
.Lfunc_end64:
	.size	_ZN6thrust6system6detail9bad_allocD0Ev, .Lfunc_end64-_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_end65:
	.size	_ZNK6thrust6system6detail9bad_alloc4whatEv, .Lfunc_end65-_ZNK6thrust6system6detail9bad_alloc4whatEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm,"axG",@progbits,_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm,comdat
	.weak	_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm # -- Begin function _ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm,@function
_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm: # @_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm
.Lfunc_begin14:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception14
# %bb.0:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movq	(%rdi), %rdi
.Ltmp561:
	callq	_ZN6thrust11hip_rocprim4freeINS0_3tagENS_7pointerIhS2_NS_11use_defaultES4_EEEEvRNS0_16execution_policyIT_EET0_
.Ltmp562:
# %bb.1:                                # %_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE10deallocateENS_7pointerIhS3_NS_11use_defaultES6_EEm.exit
	popq	%rax
	.cfi_def_cfa_offset 8
	retq
.LBB66_2:
	.cfi_def_cfa_offset 16
.Ltmp563:
	movq	%rax, %rdi
	callq	__cxa_begin_catch
	popq	%rax
	.cfi_def_cfa_offset 8
	jmp	__cxa_end_catch                 # TAILCALL
.Lfunc_end66:
	.size	_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm, .Lfunc_end66-_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm,"aG",@progbits,_ZN6thrust6detail18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEE10deallocateENS_7pointerIhS4_NS_11use_defaultES8_EEm,comdat
	.p2align	2, 0x0
GCC_except_table66:
.Lexception14:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase7-.Lttbaseref7
.Lttbaseref7:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end14-.Lcst_begin14
.Lcst_begin14:
	.uleb128 .Ltmp561-.Lfunc_begin14        # >> Call Site 1 <<
	.uleb128 .Ltmp562-.Ltmp561              #   Call between .Ltmp561 and .Ltmp562
	.uleb128 .Ltmp563-.Lfunc_begin14        #     jumps to .Ltmp563
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp562-.Lfunc_begin14        # >> Call Site 2 <<
	.uleb128 .Lfunc_end66-.Ltmp562          #   Call between .Ltmp562 and .Lfunc_end66
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end14:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase7:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE,"axG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE,comdat
	.weak	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE # -- Begin function _ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
	.type	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE,@function
_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE: # @_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
.Lfunc_begin15:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception15
# %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	%r8, %rbx
	movq	%rcx, %r14
	testq	%rcx, %rcx
	je	.LBB67_6
# %bb.1:                                # %_ZN6thrust11hip_rocprim24trivial_copy_from_deviceIiEE10hipError_tPT_PKS3_mP12ihipStream_t.exit.i
	leaq	(,%r14,4), %rax
	movq	%rbx, %rdi
	movq	%rdx, %rsi
	movq	%rax, %rdx
	movl	$2, %ecx
	xorl	%r8d, %r8d
	callq	hipMemcpyWithStream
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB67_2
.LBB67_6:                               # %_ZN6thrust11hip_rocprim6__copy19trivial_device_copyINS0_3tagENS_6system3cpp6detail3tagEimEEvRNS0_16execution_policyIT_EERNS6_16execution_policyIT0_EEPT1_PKSG_T2_.exit
	leaq	(%rbx,%r14,4), %rax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB67_2:
	.cfi_def_cfa_offset 32
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp564:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp565:
# %bb.3:
.Ltmp566:
	movl	$.L.str.62, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp567:
# %bb.4:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB67_5:
.Ltmp568:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end67:
	.size	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE, .Lfunc_end67-_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE,"aG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS0_3tagENS_6system3cpp6detail3tagENS_10device_ptrIiEEmPiEET3_RNS_16execution_policyIT_EERNSC_IT0_EET1_T2_SB_NS_6detail17integral_constantIbLb1EEE,comdat
	.p2align	2, 0x0
GCC_except_table67:
.Lexception15:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end15-.Lcst_begin15
.Lcst_begin15:
	.uleb128 .Lfunc_begin15-.Lfunc_begin15  # >> Call Site 1 <<
	.uleb128 .Ltmp564-.Lfunc_begin15        #   Call between .Lfunc_begin15 and .Ltmp564
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp564-.Lfunc_begin15        # >> Call Site 2 <<
	.uleb128 .Ltmp567-.Ltmp564              #   Call between .Ltmp564 and .Ltmp567
	.uleb128 .Ltmp568-.Lfunc_begin15        #     jumps to .Ltmp568
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp567-.Lfunc_begin15        # >> Call Site 3 <<
	.uleb128 .Lfunc_end67-.Ltmp567          #   Call between .Ltmp567 and .Lfunc_end67
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end15:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE,"axG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE,comdat
	.weak	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE # -- Begin function _ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
	.type	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE,@function
_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE: # @_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
.Lfunc_begin16:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception16
# %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	%r8, %rbx
	movq	%rcx, %r14
	testq	%rcx, %rcx
	je	.LBB68_6
# %bb.1:                                # %_ZN6thrust11hip_rocprim22trivial_copy_to_deviceIiEE10hipError_tPT_PKS3_mP12ihipStream_t.exit.i
	leaq	(,%r14,4), %rax
	movq	%rbx, %rdi
	movq	%rdx, %rsi
	movq	%rax, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	hipMemcpyWithStream
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB68_2
.LBB68_6:                               # %_ZN6thrust11hip_rocprim6__copy19trivial_device_copyINS_6system3cpp6detail3tagENS0_3tagEimEEvRNS5_16execution_policyIT_EERNS0_16execution_policyIT0_EEPT1_PKSG_T2_.exit
	leaq	(%rbx,%r14,4), %rax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB68_2:
	.cfi_def_cfa_offset 32
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp569:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp570:
# %bb.3:
.Ltmp571:
	movl	$.L.str.63, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp572:
# %bb.4:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB68_5:
.Ltmp573:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end68:
	.size	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE, .Lfunc_end68-_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE,"aG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEPKimNS_10device_ptrIiEEEET3_RNS_16execution_policyIT_EERNSD_IT0_EET1_T2_SC_NS_6detail17integral_constantIbLb1EEE,comdat
	.p2align	2, 0x0
GCC_except_table68:
.Lexception16:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end16-.Lcst_begin16
.Lcst_begin16:
	.uleb128 .Lfunc_begin16-.Lfunc_begin16  # >> Call Site 1 <<
	.uleb128 .Ltmp569-.Lfunc_begin16        #   Call between .Lfunc_begin16 and .Ltmp569
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp569-.Lfunc_begin16        # >> Call Site 2 <<
	.uleb128 .Ltmp572-.Ltmp569              #   Call between .Ltmp569 and .Ltmp572
	.uleb128 .Ltmp573-.Lfunc_begin16        #     jumps to .Ltmp573
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp572-.Lfunc_begin16        # >> Call Site 3 <<
	.uleb128 .Lfunc_end68-.Ltmp572          #   Call between .Ltmp572 and .Lfunc_end68
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end16:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em,"axG",@progbits,_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em,comdat
	.weak	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em # -- Begin function _ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em,@function
_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em: # @_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
.Lfunc_begin17:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception17
# %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)
.Ltmp574:
	movq	%rbx, %rdi
	movq	%r14, %rsi
	callq	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm
.Ltmp575:
# %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
.LBB69_3:
	.cfi_def_cfa_offset 32
.Ltmp576:
	movq	%rax, %r14
.Ltmp577:
	movq	%rbx, %rdi
	callq	_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv
.Ltmp578:
# %bb.4:                                # %_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEED2Ev.exit
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.LBB69_2:
.Ltmp579:
	movq	%rax, %rdi
	callq	__clang_call_terminate
.Lfunc_end69:
	.size	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em, .Lfunc_end69-_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em,"aG",@progbits,_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEEC2Em,comdat
	.p2align	2, 0x0
GCC_except_table69:
.Lexception17:
	.byte	255                             # @LPStart Encoding = omit
	.byte	3                               # @TType Encoding = udata4
	.uleb128 .Lttbase8-.Lttbaseref8
.Lttbaseref8:
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end17-.Lcst_begin17
.Lcst_begin17:
	.uleb128 .Lfunc_begin17-.Lfunc_begin17  # >> Call Site 1 <<
	.uleb128 .Ltmp574-.Lfunc_begin17        #   Call between .Lfunc_begin17 and .Ltmp574
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp574-.Lfunc_begin17        # >> Call Site 2 <<
	.uleb128 .Ltmp575-.Ltmp574              #   Call between .Ltmp574 and .Ltmp575
	.uleb128 .Ltmp576-.Lfunc_begin17        #     jumps to .Ltmp576
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp577-.Lfunc_begin17        # >> Call Site 3 <<
	.uleb128 .Ltmp578-.Ltmp577              #   Call between .Ltmp577 and .Ltmp578
	.uleb128 .Ltmp579-.Lfunc_begin17        #     jumps to .Ltmp579
	.byte	1                               #   On action: 1
	.uleb128 .Ltmp578-.Lfunc_begin17        # >> Call Site 4 <<
	.uleb128 .Lfunc_end69-.Ltmp578          #   Call between .Ltmp578 and .Lfunc_end69
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end17:
	.byte	1                               # >> Action Record 1 <<
                                        #   Catch TypeInfo 1
	.byte	0                               #   No further actions
	.p2align	2, 0x0
                                        # >> Catch TypeInfos <<
	.long	0                               # TypeInfo 1
.Lttbase8:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm,"axG",@progbits,_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm,comdat
	.weak	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm # -- Begin function _ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm
	.p2align	1, 0x90
	.type	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm,@function
_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm: # @_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm
	.cfi_startproc
# %bb.0:
	testq	%rsi, %rsi
	je	.LBB70_2
# %bb.1:                                # %_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE19default_construct_nENS0_15normal_iteratorINS_10device_ptrIiEEEEm.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
	movq	%rax, %rsi
	xorl	%edx, %edx
	movq	%rbx, %rcx
	callq	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_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
.LBB70_2:
	retq
.Lfunc_end70:
	.size	_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_initEm, .Lfunc_end70-_ZN6thrust6detail11vector_baseIiNS_16device_allocatorIiEEE12default_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	.LBB71_1
.LBB71_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
.LBB71_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	.LBB71_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
.LBB71_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB71_4
.Lfunc_end71:
	.size	_ZN6thrust2mr19get_global_resourceINS_26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS9_EENS_11use_defaultEEEEEEEEEPT_v, .Lfunc_end71-_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_end72:
	.size	_ZN6thrust2mr15memory_resourceINS_10device_ptrIvEEED2Ev, .Lfunc_end72-_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	.LBB73_1
.LBB73_4:
	movl	$_ZZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_vE8resource, %eax
	retq
.LBB73_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	.LBB73_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
.LBB73_3:
	addq	$8, %rsp
	.cfi_def_cfa_offset 8
	jmp	.LBB73_4
.Lfunc_end73:
	.size	_ZN6thrust2mr19get_global_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS8_EENS_11use_defaultEEEEEEEPT_v, .Lfunc_end73-_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_end74:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEED0Ev, .Lfunc_end74-_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_end75:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE11do_allocateEmm, .Lfunc_end75-_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_end76:
	.size	_ZN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEE13do_deallocateENS_10device_ptrIvEEmm, .Lfunc_end76-_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_end77:
	.size	_ZNK6thrust2mr15memory_resourceINS_10device_ptrIvEEE11do_is_equalERKS4_, .Lfunc_end77-_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_end78:
	.size	_ZN6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEED2Ev, .Lfunc_end78-_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_end79:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEED0Ev, .Lfunc_end79-_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_begin18:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception18
# %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	.LBB80_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
.LBB80_1:
	.cfi_def_cfa_offset 112
	movl	%eax, %ebp
	callq	hipGetLastError
	movl	$40, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp580:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp581:
# %bb.2:
	movq	(%rax), %rcx
.Ltmp582:
	leaq	16(%rsp), %rdi
	movq	%rax, %rsi
	movl	%ebp, %edx
	callq	*48(%rcx)
.Ltmp583:
# %bb.3:
	movq	16(%rsp), %rsi
.Ltmp585:
	leaq	48(%rsp), %rdi
	leaq	7(%rsp), %rdx
	callq	_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_
.Ltmp586:
# %bb.4:
	movb	$1, %bpl
.Ltmp588:
	leaq	48(%rsp), %rsi
	movq	%rbx, %rdi
	callq	_ZN6thrust6system6detail9bad_allocC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
.Ltmp589:
# %bb.5:
	xorl	%ebp, %ebp
.Ltmp590:
	movl	$_ZTIN6thrust6system6detail9bad_allocE, %esi
	movl	$_ZN6thrust6system6detail9bad_allocD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp591:
# %bb.17:
.LBB80_7:
.Ltmp592:
	movq	%rax, %r14
	leaq	64(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB80_9
# %bb.8:                                # %_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE11_M_is_localEv.exit.i.i
	callq	_ZdlPv
.LBB80_9:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB80_11
# %bb.10:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15
	callq	_ZdlPv
.LBB80_11:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15
	testb	%bpl, %bpl
	jne	.LBB80_14
	jmp	.LBB80_15
.LBB80_12:                              # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit.thread
.Ltmp587:
	movq	%rax, %r14
	leaq	32(%rsp), %rax
	movq	-16(%rax), %rdi
	cmpq	%rax, %rdi
	je	.LBB80_14
# %bb.13:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15.thread26
	callq	_ZdlPv
	jmp	.LBB80_14
.LBB80_6:                               # %_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev.exit15.thread
.Ltmp584:
	movq	%rax, %r14
.LBB80_14:
	movq	%rbx, %rdi
	callq	__cxa_free_exception
.LBB80_15:
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end80:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE11do_allocateEmm, .Lfunc_end80-_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_table80:
.Lexception18:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end18-.Lcst_begin18
.Lcst_begin18:
	.uleb128 .Lfunc_begin18-.Lfunc_begin18  # >> Call Site 1 <<
	.uleb128 .Ltmp580-.Lfunc_begin18        #   Call between .Lfunc_begin18 and .Ltmp580
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp580-.Lfunc_begin18        # >> Call Site 2 <<
	.uleb128 .Ltmp583-.Ltmp580              #   Call between .Ltmp580 and .Ltmp583
	.uleb128 .Ltmp584-.Lfunc_begin18        #     jumps to .Ltmp584
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp585-.Lfunc_begin18        # >> Call Site 3 <<
	.uleb128 .Ltmp586-.Ltmp585              #   Call between .Ltmp585 and .Ltmp586
	.uleb128 .Ltmp587-.Lfunc_begin18        #     jumps to .Ltmp587
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp588-.Lfunc_begin18        # >> Call Site 4 <<
	.uleb128 .Ltmp591-.Ltmp588              #   Call between .Ltmp588 and .Ltmp591
	.uleb128 .Ltmp592-.Lfunc_begin18        #     jumps to .Ltmp592
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp591-.Lfunc_begin18        # >> Call Site 5 <<
	.uleb128 .Lfunc_end80-.Ltmp591          #   Call between .Ltmp591 and .Lfunc_end80
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end18:
	.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_begin19:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception19
# %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	.LBB81_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
.LBB81_1:
	.cfi_def_cfa_offset 32
	movl	%eax, %ebp
	callq	hipGetLastError
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp593:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp594:
# %bb.2:
.Ltmp595:
	movl	$.L.str.64, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp596:
# %bb.3:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB81_4:
.Ltmp597:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end81:
	.size	_ZN6thrust6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS6_EENS_11use_defaultEEEE13do_deallocateESA_mm, .Lfunc_end81-_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_table81:
.Lexception19:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end19-.Lcst_begin19
.Lcst_begin19:
	.uleb128 .Lfunc_begin19-.Lfunc_begin19  # >> Call Site 1 <<
	.uleb128 .Ltmp593-.Lfunc_begin19        #   Call between .Lfunc_begin19 and .Ltmp593
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp593-.Lfunc_begin19        # >> Call Site 2 <<
	.uleb128 .Ltmp596-.Ltmp593              #   Call between .Ltmp593 and .Ltmp596
	.uleb128 .Ltmp597-.Lfunc_begin19        #     jumps to .Ltmp597
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp596-.Lfunc_begin19        # >> Call Site 3 <<
	.uleb128 .Lfunc_end81-.Ltmp596          #   Call between .Ltmp596 and .Lfunc_end81
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end19:
	.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_end82:
	.size	_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_, .Lfunc_end82-_ZNK6thrust2mr15memory_resourceINS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS4_EENS_11use_defaultEEEE11do_is_equalERKS9_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"axG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.weak	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m # -- Begin function _ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,@function
_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m: # @_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
.Lfunc_begin20:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception20
# %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, 4(%rsp)                   # 4-byte Spill
	movq	%rsi, 16(%rsp)                  # 8-byte Spill
	movl	$4294967040, %ebp               # imm = 0xFFFFFF00
	movq	%rcx, 8(%rsp)                   # 8-byte Spill
	addq	%rbp, %rcx
	decq	%rcx
	shrq	$8, %rcx
	movabsq	$72057598332895489, %rdx        # imm = 0x100000100000101
	movq	%rcx, %rax
	mulq	%rdx
	cmpq	$16777215, %rcx                 # imm = 0xFFFFFF
	jb	.LBB83_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
.LBB83_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	.LBB83_4
# %bb.3:                                #   in Loop: Header=BB83_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_ptrIiEEiEEmLj1EEEvT0_T1_S9_
.LBB83_4:                               #   in Loop: Header=BB83_2 Depth=1
	addq	%rbp, %r12
	addq	%r14, %rbx
	decq	%r15
	jne	.LBB83_2
.LBB83_5:                               # %_ZN6thrust11hip_rocprim14__parallel_for12parallel_forINS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEE10hipError_tT0_T_P12ihipStream_t.exit
	callq	hipPeekAtLastError
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB83_6
# %bb.11:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit
	xorl	%edi, %edi
	callq	hipStreamSynchronize
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB83_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
.LBB83_6:
	.cfi_def_cfa_offset 80
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp598:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp599:
# %bb.7:
.Ltmp600:
	movl	$.L.str.65, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp601:
	jmp	.LBB83_8
.LBB83_12:
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp603:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp604:
# %bb.13:
.Ltmp605:
	movl	$.L.str.66, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp606:
.LBB83_8:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB83_14:
.Ltmp607:
	jmp	.LBB83_10
.LBB83_9:
.Ltmp602:
.LBB83_10:                              # %common.resume
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end83:
	.size	_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m, .Lfunc_end83-_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,"aG",@progbits,_ZZN6thrust11hip_rocprim12parallel_forINS0_3tagENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmEEvRNS0_16execution_policyIT_EET0_T1_EN10workaround3parERNS8_IS2_EES7_m,comdat
	.p2align	2, 0x0
GCC_except_table83:
.Lexception20:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end20-.Lcst_begin20
.Lcst_begin20:
	.uleb128 .Lfunc_begin20-.Lfunc_begin20  # >> Call Site 1 <<
	.uleb128 .Ltmp598-.Lfunc_begin20        #   Call between .Lfunc_begin20 and .Ltmp598
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp598-.Lfunc_begin20        # >> Call Site 2 <<
	.uleb128 .Ltmp601-.Ltmp598              #   Call between .Ltmp598 and .Ltmp601
	.uleb128 .Ltmp602-.Lfunc_begin20        #     jumps to .Ltmp602
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp601-.Lfunc_begin20        # >> Call Site 3 <<
	.uleb128 .Ltmp603-.Ltmp601              #   Call between .Ltmp601 and .Ltmp603
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp603-.Lfunc_begin20        # >> Call Site 4 <<
	.uleb128 .Ltmp606-.Ltmp603              #   Call between .Ltmp603 and .Ltmp606
	.uleb128 .Ltmp607-.Lfunc_begin20        #     jumps to .Ltmp607
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp606-.Lfunc_begin20        # >> Call Site 5 <<
	.uleb128 .Lfunc_end83-.Ltmp606          #   Call between .Ltmp606 and .Lfunc_end83
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end20:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,comdat
	.weak	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_ # -- Begin function _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.type	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_: # @_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_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)
	movl	%esi, 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_ptrIiEEiEEmLj1EEEvT0_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_end84:
	.size	_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_, .Lfunc_end84-_ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv,"axG",@progbits,_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv,comdat
	.weak	_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv # -- Begin function _ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv
	.p2align	1, 0x90
	.type	_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv,@function
_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv: # @_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv
	.cfi_startproc
# %bb.0:
	movq	16(%rdi), %rdx
	testq	%rdx, %rdx
	je	.LBB85_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
.LBB85_2:
	retq
.Lfunc_end85:
	.size	_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv, .Lfunc_end85-_ZN6thrust6detail18contiguous_storageIiNS_16device_allocatorIiEEE10deallocateEv
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE,"axG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE,comdat
	.weak	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE # -- Begin function _ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
	.type	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE,@function
_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE: # @_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
.Lfunc_begin21:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception21
# %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	%r8, %rbx
	movq	%rcx, %r14
	testq	%rcx, %rcx
	je	.LBB86_6
# %bb.1:                                # %_ZN6thrust11hip_rocprim22trivial_copy_to_deviceIiEE10hipError_tPT_PKS3_mP12ihipStream_t.exit.i
	leaq	(,%r14,4), %rax
	movq	%rbx, %rdi
	movq	%rdx, %rsi
	movq	%rax, %rdx
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	hipMemcpyWithStream
	movl	%eax, %ebp
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB86_2
.LBB86_6:                               # %_ZN6thrust11hip_rocprim6__copy19trivial_device_copyINS_6system3cpp6detail3tagENS0_3tagEimEEvRNS5_16execution_policyIT_EERNS0_16execution_policyIT0_EEPT1_PKSG_T2_.exit
	leaq	(%rbx,%r14,4), %rax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%r14
	.cfi_def_cfa_offset 16
	popq	%rbp
	.cfi_def_cfa_offset 8
	retq
.LBB86_2:
	.cfi_def_cfa_offset 32
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp608:
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp609:
# %bb.3:
.Ltmp610:
	movl	$.L.str.63, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp611:
# %bb.4:
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB86_5:
.Ltmp612:
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end86:
	.size	_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE, .Lfunc_end86-_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE
	.cfi_endproc
	.section	.gcc_except_table._ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE,"aG",@progbits,_ZN6thrust11hip_rocprim6__copy19cross_system_copy_nINS_6system3cpp6detail3tagENS0_3tagEN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEmNS_6detail15normal_iteratorINS_10device_ptrIiEEEEEET3_RNS_16execution_policyIT_EERNSL_IT0_EET1_T2_SK_NSF_17integral_constantIbLb1EEE,comdat
	.p2align	2, 0x0
GCC_except_table86:
.Lexception21:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end21-.Lcst_begin21
.Lcst_begin21:
	.uleb128 .Lfunc_begin21-.Lfunc_begin21  # >> Call Site 1 <<
	.uleb128 .Ltmp608-.Lfunc_begin21        #   Call between .Lfunc_begin21 and .Ltmp608
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp608-.Lfunc_begin21        # >> Call Site 2 <<
	.uleb128 .Ltmp611-.Ltmp608              #   Call between .Ltmp608 and .Ltmp611
	.uleb128 .Ltmp612-.Lfunc_begin21        #     jumps to .Ltmp612
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp611-.Lfunc_begin21        # >> Call Site 3 <<
	.uleb128 .Lfunc_end86-.Ltmp611          #   Call between .Ltmp611 and .Lfunc_end86
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end21:
	.p2align	2, 0x0
                                        # -- End function
	.section	.text._ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_,"axG",@progbits,_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_,comdat
	.weak	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_ # -- Begin function _ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
	.p2align	1, 0x90
	.type	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_,@function
_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_: # @_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
.Lfunc_begin22:
	.cfi_startproc
	.cfi_personality 3, __gxx_personality_v0
	.cfi_lsda 3, .Lexception22
# %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
	movq	%rcx, %rbx
	testq	%rdx, %rdx
	je	.LBB87_28
# %bb.1:
	movq	%rdx, %r14
	movq	%rsi, %r15
	movq	%rdi, %r12
	xorl	%eax, %eax
	leaq	8(%rsp), %rsi
	movq	%rax, (%rsi)
	.cfi_escape 0x2e, 0x10
	xorl	%edi, %edi
	movq	%r15, %rdx
	movq	%rbx, %rcx
	xorl	%r8d, %r8d
	movq	%r14, %r9
	pushq	$0
	.cfi_adjust_cfa_offset 8
	pushq	%rax
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	addq	$16, %rsp
	.cfi_adjust_cfa_offset -16
	movl	%eax, %ebp
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
	testl	%ebp, %ebp
	jne	.LBB87_2
# %bb.7:                                # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit.i
	movq	8(%rsp), %r13
	movq	%r12, 16(%rsp)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 24(%rsp)
	testq	%r13, %r13
	je	.LBB87_8
# %bb.9:                                # %.noexc.i.i.i
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	movq	%r13, %rsi
	callq	_ZN6thrust6detail19temporary_allocatorIhNS_11hip_rocprim3tagEE8allocateEm
	movq	%rax, %rdi
	jmp	.LBB87_10
.LBB87_8:
	xorl	%edi, %edi
.LBB87_10:
	movq	%rdi, 24(%rsp)
	movq	%r13, 32(%rsp)
.Ltmp618:
	.cfi_escape 0x2e, 0x10
	leaq	8(%rsp), %rsi
	movq	%r15, %rdx
	movq	%rbx, %rcx
	xorl	%r8d, %r8d
	movq	%r14, %r9
	pushq	$0
	.cfi_adjust_cfa_offset 8
	pushq	$0
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	addq	$16, %rsp
	.cfi_adjust_cfa_offset -16
.Ltmp619:
# %bb.11:                               # %_ZN6thrust11hip_rocprim6__scan21invoke_inclusive_scanINS0_3tagENS_10device_ptrIiEES5_lNS_4plusIvEEEENSt9enable_ifIXsrDTcl16nondeterministicfp_EE5valueE10hipError_tE4typeERNS0_16execution_policyIT_EEPvRmT0_T1_T2_T3_P12ihipStream_tb.exit.i
.Ltmp620:
	movl	%eax, %ebp
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
.Ltmp621:
# %bb.12:                               # %.noexc.i
	testl	%ebp, %ebp
	jne	.LBB87_13
# %bb.17:                               # %_ZN6thrust11hip_rocprim14throw_on_errorE10hipError_tPKc.exit25.i
.Ltmp627:
	.cfi_escape 0x2e, 0x00
	xorl	%edi, %edi
	callq	hipStreamSynchronize
.Ltmp628:
# %bb.18:                               # %_ZN6thrust11hip_rocprim20synchronize_optionalINS0_16execution_policyINS0_3tagEEEEE10hipError_tRT_.exit.i
.Ltmp629:
	movl	%eax, %ebp
	.cfi_escape 0x2e, 0x00
	callq	hipGetLastError
.Ltmp630:
# %bb.19:                               # %.noexc28.i
	testl	%ebp, %ebp
	jne	.LBB87_20
# %bb.27:
	leaq	(%rbx,%r14,4), %rbx
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	callq	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
.LBB87_28:                              # %_ZN6thrust11hip_rocprim6__scan14inclusive_scanINS0_3tagENS_10device_ptrIiEES5_lNS_4plusIvEEEET1_RNS0_16execution_policyIT_EET0_S8_T2_T3_.exit
	movq	%rbx, %rax
	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
.LBB87_2:
	.cfi_def_cfa_offset 96
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp613:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp614:
# %bb.3:
.Ltmp615:
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.24, %ecx
	movq	%rbx, %rdi
	movl	%ebp, %esi
	movq	%rax, %rdx
	callq	_ZN6thrust6system12system_errorC2EiRKNS0_14error_categoryEPKc
.Ltmp616:
# %bb.4:
	.cfi_escape 0x2e, 0x00
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.LBB87_13:
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp622:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp623:
# %bb.14:
.Ltmp624:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.25, %esi
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorC2EPKc
.Ltmp625:
	jmp	.LBB87_22
.LBB87_20:
	.cfi_escape 0x2e, 0x00
	movl	$64, %edi
	callq	__cxa_allocate_exception
	movq	%rax, %rbx
.Ltmp631:
	.cfi_escape 0x2e, 0x00
	callq	_ZN6thrust6system12hip_categoryEv
.Ltmp632:
# %bb.21:
.Ltmp633:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movl	$.L.str.67, %esi
	movq	%rbx, %rdi
	callq	_ZNSt13runtime_errorC2EPKc
.Ltmp634:
.LBB87_22:
	movq	$_ZTVN6thrust6system12system_errorE+16, (%rbx)
	movl	%ebp, 16(%rbx)
	movq	%r14, 24(%rbx)
	movq	%rbx, %rax
	addq	$48, %rax
	movq	%rax, 32(%rbx)
	movq	$0, 40(%rbx)
	movb	$0, 48(%rbx)
.Ltmp636:
	.cfi_escape 0x2e, 0x00
	movl	$_ZTIN6thrust6system12system_errorE, %esi
	movl	$_ZN6thrust6system12system_errorD2Ev, %edx
	movq	%rbx, %rdi
	callq	__cxa_throw
.Ltmp637:
# %bb.23:                               # %.cont.i
.LBB87_24:
.Ltmp635:
	jmp	.LBB87_16
.LBB87_15:
.Ltmp626:
.LBB87_16:                              # %.body.i
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	jmp	.LBB87_26
.LBB87_5:
.Ltmp617:
	movq	%rax, %r14
	.cfi_escape 0x2e, 0x00
	movq	%rbx, %rdi
	callq	__cxa_free_exception
	jmp	.LBB87_6
.LBB87_25:
.Ltmp638:
	movq	%rax, %r14
.LBB87_26:                              # %.body.i
	.cfi_escape 0x2e, 0x00
	leaq	16(%rsp), %rdi
	callq	_ZN6thrust6detail18contiguous_storageIhNS0_18no_throw_allocatorINS0_19temporary_allocatorIhNS_11hip_rocprim3tagEEEEEED2Ev
.LBB87_6:                               # %common.resume.i
	.cfi_escape 0x2e, 0x00
	movq	%r14, %rdi
	callq	_Unwind_Resume@PLT
.Lfunc_end87:
	.size	_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_, .Lfunc_end87-_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_
	.cfi_endproc
	.section	.gcc_except_table._ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_,"aG",@progbits,_ZZN6thrust11hip_rocprim16inclusive_scan_nINS0_3tagENS_10device_ptrIiEElS4_NS_4plusIvEEEET2_RNS0_16execution_policyIT_EET0_T1_S7_T3_EN10workaround3parERNS8_IS2_EES4_lS4_S6_,comdat
	.p2align	2, 0x0
GCC_except_table87:
.Lexception22:
	.byte	255                             # @LPStart Encoding = omit
	.byte	255                             # @TType Encoding = omit
	.byte	1                               # Call site Encoding = uleb128
	.uleb128 .Lcst_end22-.Lcst_begin22
.Lcst_begin22:
	.uleb128 .Lfunc_begin22-.Lfunc_begin22  # >> Call Site 1 <<
	.uleb128 .Ltmp618-.Lfunc_begin22        #   Call between .Lfunc_begin22 and .Ltmp618
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp618-.Lfunc_begin22        # >> Call Site 2 <<
	.uleb128 .Ltmp630-.Ltmp618              #   Call between .Ltmp618 and .Ltmp630
	.uleb128 .Ltmp638-.Lfunc_begin22        #     jumps to .Ltmp638
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp630-.Lfunc_begin22        # >> Call Site 3 <<
	.uleb128 .Ltmp613-.Ltmp630              #   Call between .Ltmp630 and .Ltmp613
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp613-.Lfunc_begin22        # >> Call Site 4 <<
	.uleb128 .Ltmp616-.Ltmp613              #   Call between .Ltmp613 and .Ltmp616
	.uleb128 .Ltmp617-.Lfunc_begin22        #     jumps to .Ltmp617
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp616-.Lfunc_begin22        # >> Call Site 5 <<
	.uleb128 .Ltmp622-.Ltmp616              #   Call between .Ltmp616 and .Ltmp622
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp622-.Lfunc_begin22        # >> Call Site 6 <<
	.uleb128 .Ltmp625-.Ltmp622              #   Call between .Ltmp622 and .Ltmp625
	.uleb128 .Ltmp626-.Lfunc_begin22        #     jumps to .Ltmp626
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp625-.Lfunc_begin22        # >> Call Site 7 <<
	.uleb128 .Ltmp631-.Ltmp625              #   Call between .Ltmp625 and .Ltmp631
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp631-.Lfunc_begin22        # >> Call Site 8 <<
	.uleb128 .Ltmp634-.Ltmp631              #   Call between .Ltmp631 and .Ltmp634
	.uleb128 .Ltmp635-.Lfunc_begin22        #     jumps to .Ltmp635
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp636-.Lfunc_begin22        # >> Call Site 9 <<
	.uleb128 .Ltmp637-.Ltmp636              #   Call between .Ltmp636 and .Ltmp637
	.uleb128 .Ltmp638-.Lfunc_begin22        #     jumps to .Ltmp638
	.byte	0                               #   On action: cleanup
	.uleb128 .Ltmp637-.Lfunc_begin22        # >> Call Site 10 <<
	.uleb128 .Lfunc_end87-.Ltmp637          #   Call between .Ltmp637 and .Lfunc_end87
	.byte	0                               #     has no landing pad
	.byte	0                               #   On action: cleanup
.Lcst_end22:
	.p2align	2, 0x0
                                        # -- End function
	.section	.rodata.cst8,"aM",@progbits,8
	.p2align	3, 0x0                          # -- Begin function _ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
.LCPI88_0:
	.quad	0x41cdcd6500000000              # double 1.0E+9
.LCPI88_1:
	.quad	0x408f400000000000              # double 1000
	.section	.text._ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,"axG",@progbits,_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,comdat
	.weak	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.type	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb,@function
_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb: # @_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.cfi_startproc
# %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	$1656, %rsp                     # imm = 0x678
	.cfi_def_cfa_offset 1712
	.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	%r9, %rbx
	movq	%rsi, %r13
	movq	%rdi, %r12
	movq	1712(%rsp), %rdi
	movq	%rdx, 136(%rsp)
	movq	%rcx, 128(%rsp)
	movl	%r8d, 36(%rsp)
	testq	$-3, %rdi
	jne	.LBB88_1
# %bb.3:                                # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.i
	leaq	160(%rsp), %rdi
	callq	hipGetDevice
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.4:                                # %thread-pre-split.i
	movl	160(%rsp), %esi
	jmp	.LBB88_5
.LBB88_1:
	callq	hipGetStreamDeviceId
	movl	%eax, %esi
	movl	%eax, 160(%rsp)
	testl	%eax, %eax
	js	.LBB88_2
.LBB88_5:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread.i
	movl	$999, %eax                      # imm = 0x3E7
	cmpl	$511, %esi                      # imm = 0x1FF
	ja	.LBB88_85
# %bb.6:
	movl	%esi, %r15d
	movl	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%r15,4), %eax
	testl	%eax, %eax
	je	.LBB88_7
.LBB88_9:
	leaq	160(%rsp), %rbp
	movq	%rbp, %rdi
	movl	%eax, %esi
	callq	_ZN7rocprim6detail20dispatch_target_archINS0_19wrapped_scan_configINS_14default_configEiEEEEDaNS0_11target_archE
	movl	(%rbp), %r14d
	movl	8(%rbp), %r15d
	movl	%r14d, 8(%rsp)
	imull	4(%rbp), %r14d
	movl	%r15d, %eax
	xorl	%edx, %edx
	divl	%r14d
                                        # kill: def $edx killed $edx def $rdx
	subq	%rdx, %r15
	cmpq	%r14, %r15
	cmovbeq	%r14, %r15
	cmpq	%rbx, %r15
	movq	%rbx, %rax
	cmovbq	%r15, %rax
	movq	%rax, 24(%rsp)                  # 8-byte Spill
	addq	%r14, %rax
	decq	%rax
	xorl	%edx, %edx
	divq	%r14
	movq	%rax, %rbp
	movl	%ebp, 4(%rsp)
	movq	1712(%rsp), %rdi
	testq	$-3, %rdi
	jne	.LBB88_10
# %bb.11:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.i.i.i
	leaq	88(%rsp), %rdi
	callq	hipGetDevice
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.12:                               # %_ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit._ZN7rocprim6detail22get_device_from_streamEP12ihipStream_tRi.exit.thread_crit_edge.i.i.i
	movl	88(%rsp), %esi
	jmp	.LBB88_13
.LBB88_7:
	leaq	184(%rsp), %rdi
	callq	hipGetDevicePropertiesR0600
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.8:                                # %_ZN7rocprim6detail16host_target_archEP12ihipStream_tRNS0_11target_archE.exit.thread235
	leaq	1344(%rsp), %r14
	leaq	1600(%rsp), %rsi
	movq	%r14, %rdi
	callq	_ZSt9__find_ifIPKcN9__gnu_cxx5__ops10_Iter_predIZN7rocprim6detail14parse_gcn_archES1_EUlRS0_E_EEET_SA_SA_T0_St26random_access_iterator_tag
	subq	%r14, %rax
	movq	%r14, %rdi
	movq	%rax, %rsi
	callq	_ZN7rocprim6detail25get_target_arch_from_nameEPKcm
	movl	%eax, %ecx
	xchgl	%ecx, _ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache(,%r15,4)
	jmp	.LBB88_9
.LBB88_10:
	callq	hipGetStreamDeviceId
	movl	%eax, %esi
	movl	%eax, 88(%rsp)
	testl	%eax, %eax
	js	.LBB88_2
.LBB88_13:                              # %_ZN7rocprim6detail19lookback_scan_stateIiLb0ELb1EE23get_temp_storage_layoutEjP12ihipStream_tRNS0_12temp_storage6layoutE.exit
	leaq	184(%rsp), %rdi
	callq	hipGetDevicePropertiesR0600
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.14:
	xorl	%eax, %eax
	cmpq	%rbx, %r15
	setbe	%al
	leaq	184(%rsp), %rdi
	addl	308(%rdi), %ebp
	shlq	$3, %rbp
	shll	$2, %eax
	leaq	152(%rsp), %rcx
	movq	%rcx, (%rdi)
	movq	%rbp, 8(%rdi)
	movq	$8, 16(%rdi)
	leaq	120(%rsp), %rcx
	movq	%rcx, 24(%rdi)
	movq	%rax, 32(%rdi)
	movl	$4, %ebp
	movq	%rbp, 40(%rdi)
	leaq	112(%rsp), %rcx
	movq	%rcx, 48(%rdi)
	movq	%rax, 56(%rdi)
	movq	%rbp, 64(%rdi)
	callq	_ZNK7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE10get_layoutEv
	cmpq	$5, %rax
	cmovaeq	%rax, %rbp
	testq	%r12, %r12
	je	.LBB88_15
# %bb.16:
	movl	$1, %eax
	cmpq	%rbp, (%r13)
	jb	.LBB88_85
# %bb.17:                               # %_ZN7rocprim6detail12temp_storage9partitionINS1_16linear_partitionIJNS1_16simple_partitionIvEENS4_IiEES6_EEEEE10hipError_tPvRmT_.exit
	leaq	184(%rsp), %rdi
	movq	%r12, %rsi
	callq	_ZN7rocprim6detail12temp_storage16linear_partitionIJNS1_16simple_partitionIvEENS3_IiEES5_EE11set_storageEPv
	movl	4(%rsp), %eax
	testl	%eax, %eax
	je	.LBB88_85
# %bb.18:                               # %_ZN7rocprim6detail12temp_storage9partitionINS1_16linear_partitionIJNS1_16simple_partitionIvEENS4_IiEES6_EEEEE10hipError_tPvRmT_.exit
	movb	1720(%rsp), %r12b
	cmpl	$1, %eax
	jne	.LBB88_20
# %bb.19:
	cmpq	%rbx, %r15
	ja	.LBB88_74
.LBB88_20:
	movq	1712(%rsp), %rdi
	leaq	15(%rsp), %rsi
	callq	_ZN7rocprim6detail24is_sleep_scan_state_usedEP12ihipStream_tRb
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.21:
	movq	152(%rsp), %rax
	movb	15(%rsp), %cl
	movb	%cl, 88(%rsp)
	movq	%rax, 96(%rsp)
	movq	%rax, 104(%rsp)
	testb	%r12b, %r12b
	je	.LBB88_22
# %bb.23:
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	jmp	.LBB88_24
.LBB88_2:
	movl	$400, %eax                      # imm = 0x190
.LBB88_85:
	addq	$1656, %rsp                     # imm = 0x678
	.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
.LBB88_15:
	.cfi_def_cfa_offset 1712
	movq	%rbp, (%r13)
.LBB88_84:
	xorl	%eax, %eax
	jmp	.LBB88_85
.LBB88_74:
	testb	%r12b, %r12b
	je	.LBB88_75
# %bb.76:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%rbx, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, %r14
	jmp	.LBB88_77
.LBB88_22:
	xorl	%eax, %eax
.LBB88_24:
	movq	%rax, 40(%rsp)                  # 8-byte Spill
	movq	24(%rsp), %rdi                  # 8-byte Reload
	leaq	-1(%rbx), %rcx
	leaq	(%rcx,%rdi), %rax
	xorl	%esi, %esi
	xorl	%edx, %edx
	divq	%rdi
	movq	%rax, 64(%rsp)
	movq	%rsi, 56(%rsp)
	movq	%rsi, 80(%rsp)
	addq	%rdi, %rcx
	jb	.LBB88_84
# %bb.25:                               # %.lr.ph
	leaq	-1(%r14), %rax
	movq	%rax, 144(%rsp)                 # 8-byte Spill
	xorl	%ecx, %ecx
	leaq	184(%rsp), %r13
.LBB88_26:                              # =>This Inner Loop Header: Depth=1
	movq	%rbx, %rax
	subq	%rcx, %rax
	cmpq	%rdi, %rax
	cmovaeq	%rdi, %rax
	movq	%rax, 48(%rsp)
	addq	144(%rsp), %rax                 # 8-byte Folded Reload
	xorl	%edx, %edx
	divq	%r14
	movl	%eax, 4(%rsp)
	movl	8(%rsp), %ecx
	addl	%ecx, %eax
	decl	%eax
	xorl	%edx, %edx
	divl	%ecx
	movl	%eax, 16(%rsp)
	testb	%r12b, %r12b
	je	.LBB88_52
# %bb.27:                               #   in Loop: Header=BB88_26 Depth=1
	xorl	%ebp, %ebp
	cmpq	%rbx, %r15
	setbe	%bpl
	movl	$_ZSt4cout, %edi
	movl	$.L.str.34, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	%ebp, %esi
	callq	_ZNSo9_M_insertIbEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_29
# %bb.28:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_30
.LBB88_29:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_30:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.35, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_32
# %bb.31:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_33
.LBB88_32:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_33:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit138
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.36, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	64(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_35
# %bb.34:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_36
.LBB88_35:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_36:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit141
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.37, %esi
	movl	$6, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	56(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_38
# %bb.37:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_39
.LBB88_38:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_39:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit144
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_41
# %bb.40:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_42
.LBB88_41:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_42:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit147
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_44
# %bb.43:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_45
.LBB88_44:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_45:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit150
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_47
# %bb.46:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_48
.LBB88_47:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_48:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit153
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movb	$10, 184(%rsp)
	movq	(%rax), %rcx
	movq	-24(%rcx), %rcx
	cmpq	$0, 16(%rax,%rcx)
	je	.LBB88_50
# %bb.49:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$1, %edx
	movq	%rax, %rdi
	movq	%r13, %rsi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	jmp	.LBB88_51
.LBB88_50:                              #   in Loop: Header=BB88_26 Depth=1
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZNSo3putEc
.LBB88_51:                              # %_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c.exit156
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	16(%rsp), %eax
	movl	8(%rsp), %ecx
.LBB88_52:                              #   in Loop: Header=BB88_26 Depth=1
	movl	%eax, %edi
	movabsq	$4294967296, %rax               # imm = 0x100000000
	orq	%rax, %rdi
	movl	%ecx, %edx
	orq	%rax, %rdx
	cmpb	$0, 88(%rsp)
	movq	1712(%rsp), %r9
	je	.LBB88_55
# %bb.53:                               #   in Loop: Header=BB88_26 Depth=1
	movq	104(%rsp), %rbp
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB88_57
# %bb.54:                               #   in Loop: Header=BB88_26 Depth=1
	movl	4(%rsp), %esi
	movq	%rbp, %rdi
	xorl	%edx, %edx
	xorl	%ecx, %ecx
	callq	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	jmp	.LBB88_57
.LBB88_55:                              #   in Loop: Header=BB88_26 Depth=1
	movq	96(%rsp), %rbp
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB88_57
# %bb.56:                               #   in Loop: Header=BB88_26 Depth=1
	movl	4(%rsp), %esi
	movq	%rbp, %rdi
	xorl	%edx, %edx
	xorl	%ecx, %ecx
	callq	_ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
.LBB88_57:                              # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E_EEDcSI_.exit
                                        #   in Loop: Header=BB88_26 Depth=1
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB88_61
# %bb.58:                               # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E_EEDcSI_.exit
                                        #   in Loop: Header=BB88_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB88_61
# %bb.59:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.42, %esi
	movl	$31, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.60:                               # %.thread
                                        #   in Loop: Header=BB88_26 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	40(%rsp), %rax                  # 8-byte Folded Reload
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI88_0(%rip), %xmm0
	movsd	%xmm0, 72(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	72(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI88_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbp
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbp, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB88_62
.LBB88_61:                              #   in Loop: Header=BB88_26 Depth=1
	testl	%eax, %eax
	jne	.LBB88_85
.LBB88_62:                              #   in Loop: Header=BB88_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB88_64
# %bb.63:                               #   in Loop: Header=BB88_26 Depth=1
	xorl	%ebp, %ebp
	cmpq	%rbx, %r15
	setbe	%bpl
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	movq	%rax, 40(%rsp)                  # 8-byte Spill
	movl	4(%rsp), %eax
	movl	%eax, 16(%rsp)
	movl	$_ZSt4cout, %edi
	movl	$.L.str.34, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	%ebp, %esi
	callq	_ZNSo9_M_insertIbEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.35, %esi
	movl	$19, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r15, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.38, %esi
	movl	$5, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.39, %esi
	movl	$11, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	8(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.40, %esi
	movl	$17, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	4(%rsp), %esi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	movl	$_ZSt4cout, %edi
	movl	$.L.str.41, %esi
	movl	$16, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%r14, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movq	%rax, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB88_65
.LBB88_64:                              # %.critedge
                                        #   in Loop: Header=BB88_26 Depth=1
	movl	4(%rsp), %eax
	movl	%eax, 16(%rsp)
.LBB88_65:                              #   in Loop: Header=BB88_26 Depth=1
	leaq	16(%rsp), %rax
	movq	%rax, 184(%rsp)
	leaq	8(%rsp), %rax
	movq	%rax, 192(%rsp)
	leaq	1712(%rsp), %rax
	movq	%rax, 200(%rsp)
	leaq	136(%rsp), %rax
	movq	%rax, 208(%rsp)
	leaq	80(%rsp), %rax
	movq	%rax, 216(%rsp)
	leaq	128(%rsp), %rax
	movq	%rax, 224(%rsp)
	leaq	48(%rsp), %rax
	movq	%rax, 232(%rsp)
	leaq	36(%rsp), %rax
	movq	%rax, 240(%rsp)
	leaq	23(%rsp), %rax
	movq	%rax, 248(%rsp)
	leaq	4(%rsp), %rax
	movq	%rax, 256(%rsp)
	leaq	120(%rsp), %rax
	movq	%rax, 264(%rsp)
	leaq	112(%rsp), %rax
	movq	%rax, 272(%rsp)
	leaq	56(%rsp), %rax
	movq	%rax, 280(%rsp)
	leaq	64(%rsp), %rax
	movq	%rax, 288(%rsp)
	leaq	88(%rsp), %rdi
	movq	%r13, %rsi
	callq	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB88_69
# %bb.66:                               #   in Loop: Header=BB88_26 Depth=1
	testb	%r12b, %r12b
	je	.LBB88_69
# %bb.67:                               #   in Loop: Header=BB88_26 Depth=1
	movl	$_ZSt4cout, %edi
	movl	$.L.str.47, %esi
	movl	$20, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	48(%rsp), %rsi
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.68:                               # %.thread249
                                        #   in Loop: Header=BB88_26 Depth=1
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	40(%rsp), %rax                  # 8-byte Folded Reload
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI88_0(%rip), %xmm0
	movsd	%xmm0, 72(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	72(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI88_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbp
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbp, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB88_70
.LBB88_69:                              #   in Loop: Header=BB88_26 Depth=1
	testl	%eax, %eax
	jne	.LBB88_85
.LBB88_70:                              #   in Loop: Header=BB88_26 Depth=1
	movq	64(%rsp), %rax
	cmpq	$1, %rax
	jbe	.LBB88_73
# %bb.71:                               #   in Loop: Header=BB88_26 Depth=1
	movq	112(%rsp), %rdi
	movq	120(%rsp), %rsi
	movq	1712(%rsp), %rcx
	movzbl	%r12b, %r8d
	movl	$1, %edx
	callq	_ZN7rocprim9transformINS_14default_configEPiS2_NS_8identityIiEEEE10hipError_tT0_T1_mT2_P12ihipStream_tb
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.72:                               # %._crit_edge282
                                        #   in Loop: Header=BB88_26 Depth=1
	movq	64(%rsp), %rax
.LBB88_73:                              #   in Loop: Header=BB88_26 Depth=1
	movq	56(%rsp), %rdx
	incq	%rdx
	movq	%rdx, 56(%rsp)
	movq	80(%rsp), %rcx
	movq	24(%rsp), %rdi                  # 8-byte Reload
	addq	%rdi, %rcx
	movq	%rcx, 80(%rsp)
	cmpq	%rax, %rdx
	jb	.LBB88_26
	jmp	.LBB88_84
.LBB88_75:
	xorl	%r14d, %r14d
.LBB88_77:
	movl	8(%rsp), %edx
	movq	1712(%rsp), %r9
	btsq	$32, %rdx
	movabsq	$4294967296, %rdi               # imm = 0x100000000
	orq	$1, %rdi
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB88_79
# %bb.78:
	movq	136(%rsp), %rdi
	movl	36(%rsp), %edx
	movq	128(%rsp), %rcx
	movq	%rbx, %rsi
	callq	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
.LBB88_79:
	callq	hipGetLastError
	testl	%eax, %eax
	jne	.LBB88_83
# %bb.80:
	testb	%r12b, %r12b
	je	.LBB88_83
# %bb.81:
	movl	$_ZSt4cout, %edi
	movl	$.L.str.48, %esi
	movl	$18, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movl	$.L.str.43, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movl	$_ZSt4cout, %edi
	movq	%rbx, %rsi
	callq	_ZNSo9_M_insertImEERSoT_
	movl	$.L.str.44, %esi
	movl	$1, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	1712(%rsp), %rdi
	callq	hipStreamSynchronize
	testl	%eax, %eax
	jne	.LBB88_85
# %bb.82:                               # %.critedge119.thread
	callq	_ZNSt6chrono3_V212system_clock3nowEv
	subq	%r14, %rax
	cvtsi2sd	%rax, %xmm0
	divsd	.LCPI88_0(%rip), %xmm0
	movsd	%xmm0, 24(%rsp)                 # 8-byte Spill
	movl	$_ZSt4cout, %edi
	movl	$.L.str.45, %esi
	movl	$1, %edx
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movsd	24(%rsp), %xmm0                 # 8-byte Reload
                                        # xmm0 = mem[0],zero
	mulsd	.LCPI88_1(%rip), %xmm0
	movl	$_ZSt4cout, %edi
	callq	_ZNSo9_M_insertIdEERSoT_
	movq	%rax, %rbx
	movl	$.L.str.46, %esi
	movl	$3, %edx
	movq	%rax, %rdi
	callq	_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
	movq	%rbx, %rdi
	movl	$10, %esi
	callq	_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
	jmp	.LBB88_84
.LBB88_83:                              # %.critedge119
	testl	%eax, %eax
	jne	.LBB88_85
	jmp	.LBB88_84
.Lfunc_end88:
	.size	_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb, .Lfunc_end88-_ZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,"axG",@progbits,_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,comdat
	.weak	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_ # -- Begin function _ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.p2align	1, 0x90
	.type	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_,@function
_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_: # @_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.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
	movq	%rsi, %rbx
	movq	%rdi, %rax
	movq	(%rsi), %rcx
	movq	8(%rsi), %rdx
	movl	(%rcx), %edi
	movl	(%rdx), %edx
	btsq	$32, %rdi
	btsq	$32, %rdx
	cmpb	$0, (%rax)
	movq	16(%rsi), %rcx
	movq	(%rcx), %r9
	je	.LBB89_5
# %bb.1:
	movq	16(%rax), %r14
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	jne	.LBB89_7
# %bb.2:
	movq	24(%rbx), %rax
	movq	32(%rbx), %rcx
	movq	(%rcx), %rsi
	shlq	$2, %rsi
	movq	(%rax), %rdi
	addq	%rsi, %rdi
	movq	40(%rbx), %rax
	addq	(%rax), %rsi
	movq	48(%rbx), %rax
	movq	(%rax), %rdx
	movq	56(%rbx), %rax
	movl	(%rax), %ecx
	movq	72(%rbx), %rax
	movl	(%rax), %r9d
	movq	80(%rbx), %rax
	movq	88(%rbx), %r10
	movq	96(%rbx), %r8
	xorl	%r11d, %r11d
	cmpq	$0, (%r8)
	setne	%r11b
	movq	104(%rbx), %r8
	xorl	%ebx, %ebx
	cmpq	$2, (%r8)
	setae	%bl
	movq	%r14, %r8
	pushq	%rbx
	.cfi_adjust_cfa_offset 8
	pushq	%r11
	.cfi_adjust_cfa_offset 8
	pushq	(%r10)
	.cfi_adjust_cfa_offset 8
	pushq	(%rax)
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	jmp	.LBB89_3
.LBB89_5:
	.cfi_def_cfa_offset 32
	movq	8(%rax), %r14
	movl	$1, %esi
	movl	$1, %ecx
	xorl	%r8d, %r8d
	callq	__hipPushCallConfiguration
	testl	%eax, %eax
	je	.LBB89_6
.LBB89_7:                               # %_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENKUlT_E0_clINS0_19lookback_scan_stateIiLb1ELb1EEEEEDaSH_.exit
	addq	$8, %rsp
	.cfi_def_cfa_offset 24
	jmp	.LBB89_4
.LBB89_6:
	.cfi_def_cfa_offset 32
	movq	24(%rbx), %rax
	movq	32(%rbx), %rcx
	movq	(%rcx), %rsi
	shlq	$2, %rsi
	movq	(%rax), %rdi
	addq	%rsi, %rdi
	movq	40(%rbx), %rax
	addq	(%rax), %rsi
	movq	48(%rbx), %rax
	movq	(%rax), %rdx
	movq	56(%rbx), %rax
	movl	(%rax), %ecx
	movq	72(%rbx), %rax
	movl	(%rax), %r9d
	movq	80(%rbx), %rax
	movq	88(%rbx), %r10
	movq	96(%rbx), %r8
	xorl	%r11d, %r11d
	cmpq	$0, (%r8)
	setne	%r11b
	movq	104(%rbx), %r8
	xorl	%ebx, %ebx
	cmpq	$2, (%r8)
	setae	%bl
	movq	%r14, %r8
	pushq	%rbx
	.cfi_adjust_cfa_offset 8
	pushq	%r11
	.cfi_adjust_cfa_offset 8
	pushq	(%r10)
	.cfi_adjust_cfa_offset 8
	pushq	(%rax)
	.cfi_adjust_cfa_offset 8
	callq	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
.LBB89_3:
	addq	$40, %rsp
	.cfi_adjust_cfa_offset -40
.LBB89_4:
	popq	%rbx
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end89:
	.size	_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_, .Lfunc_end89-_ZZN7rocprim6detail9scan_implILNS0_25lookback_scan_determinismE0ELb0ENS_14default_configEN6thrust10device_ptrIiEES6_iNS4_4plusIvEEiEEDaPvRmT2_T3_T4_mT5_P12ihipStream_tbENUlOT_E_clIZNS1_ILS2_0ELb0ES3_S6_S6_iS8_iEEDaS9_SA_SB_SC_SD_mSE_SG_bEUlSH_E0_EEDcSI_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
	.weak	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_ # -- Begin function _ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.type	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,@function
_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_: # @_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.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	%rcx, (%rdi)
	leaq	24(%rsp), %rcx
	movq	%rsi, (%rcx)
	leaq	4(%rsp), %rsi
	movl	%edx, (%rsi)
	leaq	80(%rsp), %rbx
	movq	%rax, (%rbx)
	movq	%rcx, 8(%rbx)
	movq	%rsi, 16(%rbx)
	movq	%rdi, 24(%rbx)
	leaq	3(%rsp), %rax
	movq	%rax, 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	$_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, %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_end90:
	.size	_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, .Lfunc_end90-_ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.weak	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb # -- Begin function _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.type	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: # @_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.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	$192, %rsp
	.cfi_def_cfa_offset 240
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movb	264(%rsp), %al
	movb	256(%rsp), %r10b
	leaq	56(%rsp), %r11
	movq	%rdi, (%r11)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	40(%rsp), %rsi
	movq	%r8, (%rsi)
	leaq	32(%rsp), %r8
	movq	%rdx, (%r8)
	leaq	12(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	8(%rsp), %rcx
	movl	%r9d, (%rcx)
	leaq	6(%rsp), %r9
	movb	%r10b, (%r9)
	leaq	5(%rsp), %r10
	movb	%al, (%r10)
	leaq	96(%rsp), %rbx
	movq	%r11, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%r8, 16(%rbx)
	movq	%rdx, 24(%rbx)
	leaq	7(%rsp), %rax
	movq	%rax, 32(%rbx)
	movq	%rsi, 40(%rbx)
	movq	%rcx, 48(%rbx)
	leaq	240(%rsp), %rax
	movq	%rax, 56(%rbx)
	leaq	248(%rsp), %rax
	movq	%rax, 64(%rbx)
	movq	%r9, 72(%rbx)
	movq	%r10, 80(%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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$208, %rsp
	.cfi_adjust_cfa_offset -208
	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_end91:
	.size	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end91-_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.cfi_endproc
                                        # -- End function
	.section	.text._ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.weak	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb # -- Begin function _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.type	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: # @_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.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	$192, %rsp
	.cfi_def_cfa_offset 240
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r13, -32
	.cfi_offset %r14, -24
	.cfi_offset %r15, -16
	movb	264(%rsp), %al
	movb	256(%rsp), %r10b
	leaq	56(%rsp), %r11
	movq	%rdi, (%r11)
	leaq	48(%rsp), %rdi
	movq	%rsi, (%rdi)
	leaq	40(%rsp), %rsi
	movq	%r8, (%rsi)
	leaq	32(%rsp), %r8
	movq	%rdx, (%r8)
	leaq	12(%rsp), %rdx
	movl	%ecx, (%rdx)
	leaq	8(%rsp), %rcx
	movl	%r9d, (%rcx)
	leaq	6(%rsp), %r9
	movb	%r10b, (%r9)
	leaq	5(%rsp), %r10
	movb	%al, (%r10)
	leaq	96(%rsp), %rbx
	movq	%r11, (%rbx)
	movq	%rdi, 8(%rbx)
	movq	%r8, 16(%rbx)
	movq	%rdx, 24(%rbx)
	leaq	7(%rsp), %rax
	movq	%rax, 32(%rbx)
	movq	%rsi, 40(%rbx)
	movq	%rcx, 48(%rbx)
	leaq	240(%rsp), %rax
	movq	%rax, 56(%rbx)
	leaq	248(%rsp), %rax
	movq	%rax, 64(%rbx)
	movq	%r9, 72(%rbx)
	movq	%r10, 80(%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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %edi
	movq	%rbx, %r9
	pushq	(%r13)
	.cfi_adjust_cfa_offset 8
	pushq	(%r12)
	.cfi_adjust_cfa_offset 8
	callq	hipLaunchKernel
	addq	$208, %rsp
	.cfi_adjust_cfa_offset -208
	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_end92:
	.size	_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end92-_ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i,"axG",@progbits,_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i,comdat
	.weak	_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i # -- Begin function _Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i
	.type	_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i,@function
_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i: # @_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_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	$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	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	$_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i, %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_end93:
	.size	_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i, .Lfunc_end93-_Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i # -- Begin function _Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.type	_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,@function
_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i: # @_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_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	$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	24(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	4(%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	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	$_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, %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_end94:
	.size	_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, .Lfunc_end94-_Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i,"axG",@progbits,_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i,comdat
	.weak	_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i # -- Begin function _Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.type	_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i,@function
_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i: # @_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_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	$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	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	$_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i, %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_end95:
	.size	_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i, .Lfunc_end95-_Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i,"axG",@progbits,_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i,comdat
	.weak	_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i # -- Begin function _Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i
	.type	_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i,@function
_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i: # @_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_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	$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	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	$_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i, %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_end96:
	.size	_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i, .Lfunc_end96-_Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,comdat
	.weak	_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i # -- Begin function _Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.type	_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,@function
_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i: # @_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_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	$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	24(%rsp), %rcx
	movq	%r8, (%rcx)
	leaq	4(%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	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	$_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, %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_end97:
	.size	_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, .Lfunc_end97-_Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.cfi_endproc
                                        # -- End function
	.section	.text._Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i,"axG",@progbits,_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i,comdat
	.weak	_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i # -- Begin function _Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.type	_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i,@function
_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i: # @_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_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	$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	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	$_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i, %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_end98:
	.size	_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i, .Lfunc_end98-_Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.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	.LBB99_2
# %bb.1:
	movl	$__hip_fatbin_wrapper, %edi
	callq	__hipRegisterFatBinary
	movq	%rax, %rbx
	movq	%rax, __hip_gpubin_handle(%rip)
.LBB99_2:
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z15getNumOfBucketsPiS_i, %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	$_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE, %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	$_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE, %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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %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	$_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_, %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	$_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, %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	$_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_, %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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %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	$_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, %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	$_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, %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	$_Z11splitterKerIiLi100EEvPT_S1_PiS2_i, %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	$_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_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	$_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i, %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	$_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i, %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	$_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, %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	$_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i, %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	$_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i, %esi
	movl	$.L__unnamed_18, %edx
	movl	$.L__unnamed_18, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, %esi
	movl	$.L__unnamed_19, %edx
	movl	$.L__unnamed_19, %ecx
	movq	%rbx, %rdi
	movl	$-1, %r8d
	xorl	%r9d, %r9d
	callq	__hipRegisterFunction
	xorps	%xmm0, %xmm0
	movups	%xmm0, 16(%rsp)
	movups	%xmm0, (%rsp)
	movl	$_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i, %esi
	movl	$.L__unnamed_20, %edx
	movl	$.L__unnamed_20, %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_end99:
	.size	__hip_module_ctor, .Lfunc_end99-__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	.LBB100_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
.LBB100_2:
	retq
.Lfunc_end100:
	.size	__hip_module_dtor, .Lfunc_end100-__hip_module_dtor
	.cfi_endproc
                                        # -- End function
	.type	_Z15getNumOfBucketsPiS_i,@object # @_Z15getNumOfBucketsPiS_i
	.section	.rodata,"a",@progbits
	.globl	_Z15getNumOfBucketsPiS_i
	.p2align	3, 0x0
_Z15getNumOfBucketsPiS_i:
	.quad	_Z30__device_stub__getNumOfBucketsPiS_i
	.size	_Z15getNumOfBucketsPiS_i, 8

	.type	.L.str,@object                  # @.str
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str:
	.asciz	"../Futhark/list_"
	.size	.L.str, 17

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

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

	.type	.L.str.3,@object                # @.str.3
.L.str.3:
	.asciz	"Error reading file "
	.size	.L.str.3, 20

	.type	.L.str.4,@object                # @.str.4
.L.str.4:
	.asciz	"\n"
	.size	.L.str.4, 2

	.type	.L.str.5,@object                # @.str.5
.L.str.5:
	.asciz	"Can't read file"
	.size	.L.str.5, 16

	.type	.L.str.7,@object                # @.str.7
.L.str.7:
	.asciz	"%i arrays of length %i\n"
	.size	.L.str.7, 24

	.type	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits,@object # @__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits
	.section	.rodata.str1.16,"aMS",@progbits,1
	.p2align	4, 0x0
.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits:
	.asciz	"00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899"
	.size	.L__const._ZNSt8__detail18__to_chars_10_implIjEEvPcjT_.__digits, 201

	.type	.L.str.9,@object                # @.str.9
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.9:
	.asciz	"stoi"
	.size	.L.str.9, 5

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

	.type	.L.str.14,@object               # @.str.14
.L.str.14:
	.asciz	"vector::_M_realloc_insert"
	.size	.L.str.14, 26

	.type	.L.str.15,@object               # @.str.15
.L.str.15:
	.asciz	"**** Generating Splitters ****"
	.size	.L.str.15, 31

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

	.type	.L.str.16,@object               # @.str.16
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.16:
	.asciz	"**** Splitters Generated****"
	.size	.L.str.16, 29

	.type	.L.str.17,@object               # @.str.17
.L.str.17:
	.asciz	"**** Generating Buckets ****"
	.size	.L.str.17, 29

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

	.type	.L.str.18,@object               # @.str.18
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.18:
	.asciz	"**** Buckets Generated ****"
	.size	.L.str.18, 28

	.type	.L.str.19,@object               # @.str.19
.L.str.19:
	.asciz	"**** Sorting Buckets ****"
	.size	.L.str.19, 26

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

	.type	.L.str.20,@object               # @.str.20
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.20:
	.asciz	"**** Writing Back ****"
	.size	.L.str.20, 23

	.type	.L.str.21,@object               # @.str.21
.L.str.21:
	.asciz	"**** Arrays Sorted, Time Taken : "
	.size	.L.str.21, 34

	.type	.L.str.22,@object               # @.str.22
.L.str.22:
	.asciz	"****"
	.size	.L.str.22, 5

	.type	.L.str.23,@object               # @.str.23
.L.str.23:
	.asciz	"**** Arrays Sorted, Time Taken (on CPU) : "
	.size	.L.str.23, 43

	.type	.L.str.24,@object               # @.str.24
.L.str.24:
	.asciz	"scan failed on 1st step"
	.size	.L.str.24, 24

	.type	.L.str.25,@object               # @.str.25
.L.str.25:
	.asciz	"scan failed on 2nd step"
	.size	.L.str.25, 24

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

	.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	_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

	.hidden	__dso_handle
	.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.27,@object               # @.str.27
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.27:
	.asciz	"hip"
	.size	.L.str.27, 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.28,@object               # @.str.28
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.28:
	.asciz	"system"
	.size	.L.str.28, 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.29,@object               # @.str.29
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.29:
	.asciz	"generic"
	.size	.L.str.29, 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.30,@object               # @.str.30
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.30:
	.asciz	"Unknown error"
	.size	.L.str.30, 14

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

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

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

	.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.34,@object               # @.str.34
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.34:
	.asciz	"use_limited_size "
	.size	.L.str.34, 18

	.type	.L.str.35,@object               # @.str.35
.L.str.35:
	.asciz	"aligned_size_limit "
	.size	.L.str.35, 20

	.type	.L.str.36,@object               # @.str.36
.L.str.36:
	.asciz	"number_of_launch "
	.size	.L.str.36, 18

	.type	.L.str.37,@object               # @.str.37
.L.str.37:
	.asciz	"index "
	.size	.L.str.37, 7

	.type	.L.str.38,@object               # @.str.38
.L.str.38:
	.asciz	"size "
	.size	.L.str.38, 6

	.type	.L.str.39,@object               # @.str.39
.L.str.39:
	.asciz	"block_size "
	.size	.L.str.39, 12

	.type	.L.str.40,@object               # @.str.40
.L.str.40:
	.asciz	"number of blocks "
	.size	.L.str.40, 18

	.type	.L.str.41,@object               # @.str.41
.L.str.41:
	.asciz	"items_per_block "
	.size	.L.str.41, 17

	.type	.L.str.42,@object               # @.str.42
.L.str.42:
	.asciz	"init_lookback_scan_state_kernel"
	.size	.L.str.42, 32

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

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

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

	.type	.L.str.46,@object               # @.str.46
.L.str.46:
	.asciz	" ms"
	.size	.L.str.46, 4

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

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

	.type	.L.str.48,@object               # @.str.48
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.48:
	.asciz	"single_scan_kernel"
	.size	.L.str.48, 19

	.type	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache,@object # @_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache
	.section	.bss._ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache,"awG",@nobits,_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache,comdat
	.weak	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache
	.p2align	4, 0x0
_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache:
	.zero	2048
	.size	_ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache, 2048

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

	.type	.L.str.50,@object               # @.str.50
.L.str.50:
	.asciz	"gfx900"
	.size	.L.str.50, 7

	.type	.L.str.51,@object               # @.str.51
.L.str.51:
	.asciz	"gfx906"
	.size	.L.str.51, 7

	.type	.L.str.52,@object               # @.str.52
.L.str.52:
	.asciz	"gfx908"
	.size	.L.str.52, 7

	.type	.L.str.53,@object               # @.str.53
.L.str.53:
	.asciz	"gfx90a"
	.size	.L.str.53, 7

	.type	.L.str.54,@object               # @.str.54
.L.str.54:
	.asciz	"gfx1030"
	.size	.L.str.54, 8

	.type	.L.str.55,@object               # @.str.55
.L.str.55:
	.asciz	"gfx1100"
	.size	.L.str.55, 8

	.type	.L.str.56,@object               # @.str.56
.L.str.56:
	.asciz	"gfx1102"
	.size	.L.str.56, 8

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE:
	.long	256                             # 0x100
	.long	14                              # 0xe
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE4294967295EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE:
	.long	256                             # 0x100
	.long	16                              # 0x10
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE803EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE:
	.long	256                             # 0x100
	.long	10                              # 0xa
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE900EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE:
	.long	256                             # 0x100
	.long	15                              # 0xf
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	1                               # 0x1
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE906EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE:
	.long	256                             # 0x100
	.long	14                              # 0xe
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE908EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE:
	.long	256                             # 0x100
	.long	14                              # 0xe
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE910EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE:
	.long	64                              # 0x40
	.long	18                              # 0x12
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1030EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE:
	.long	256                             # 0x100
	.long	16                              # 0x10
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1100EE6paramsE, 24

	.type	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE,@object # @_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE
	.section	.rodata._ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE,"aG",@progbits,_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE,comdat
	.weak	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE
	.p2align	2, 0x0
_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE:
	.long	256                             # 0x100
	.long	16                              # 0x10
	.long	4294967295                      # 0xffffffff
	.long	3                               # 0x3
	.long	3                               # 0x3
	.long	0                               # 0x0
	.size	_ZN7rocprim6detail19wrapped_scan_configINS_14default_configEiE19architecture_configILNS0_11target_archE1102EE6paramsE, 24

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

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

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

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

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

	.type	.L.str.58,@object               # @.str.58
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.58:
	.asciz	"number of blocks limit "
	.size	.L.str.58, 24

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

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

	.type	.L.str.60,@object               # @.str.60
.L.str.60:
	.asciz	"temporary_buffer::allocate: get_temporary_buffer failed"
	.size	.L.str.60, 56

	.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	.L.str.61,@object               # @.str.61
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.61:
	.asciz	"device free failed"
	.size	.L.str.61, 19

	.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.62,@object               # @.str.62
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.62:
	.asciz	"trivial_device_copy D->H failed"
	.size	.L.str.62, 32

	.type	.L.str.63,@object               # @.str.63
.L.str.63:
	.asciz	"__copy::trivial_device_copy H->D: failed"
	.size	.L.str.63, 41

	.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

	.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	.L.str.64,@object               # @.str.64
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.64:
	.asciz	"HIP free failed"
	.size	.L.str.64, 16

	.type	.L.str.65,@object               # @.str.65
.L.str.65:
	.asciz	"parallel_for failed"
	.size	.L.str.65, 20

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

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

	.type	.L.str.67,@object               # @.str.67
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.67:
	.asciz	"inclusive_scan: failed to synchronize"
	.size	.L.str.67, 38

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

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

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

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

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

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

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

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

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

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

	.type	.L__unnamed_2,@object           # @1
.L__unnamed_2:
	.asciz	"_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE"
	.size	.L__unnamed_2, 115

	.type	.L__unnamed_3,@object           # @2
.L__unnamed_3:
	.asciz	"_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE"
	.size	.L__unnamed_3, 115

	.type	.L__unnamed_4,@object           # @3
.L__unnamed_4:
	.asciz	"_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb"
	.size	.L__unnamed_4, 238

	.type	.L__unnamed_5,@object           # @4
.L__unnamed_5:
	.asciz	"_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb"
	.size	.L__unnamed_5, 238

	.type	.L__unnamed_6,@object           # @5
.L__unnamed_6:
	.asciz	"_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_"
	.size	.L__unnamed_6, 127

	.type	.L__unnamed_7,@object           # @6
.L__unnamed_7:
	.asciz	"_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_"
	.size	.L__unnamed_7, 151

	.type	.L__unnamed_8,@object           # @7
.L__unnamed_8:
	.asciz	"_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_"
	.size	.L__unnamed_8, 128

	.type	.L__unnamed_9,@object           # @8
.L__unnamed_9:
	.asciz	"_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb"
	.size	.L__unnamed_9, 238

	.type	.L__unnamed_10,@object          # @9
.L__unnamed_10:
	.asciz	"_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb"
	.size	.L__unnamed_10, 238

	.type	.L__unnamed_11,@object          # @10
.L__unnamed_11:
	.asciz	"_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_"
	.size	.L__unnamed_11, 151

	.type	.L__unnamed_12,@object          # @11
.L__unnamed_12:
	.asciz	"_Z11splitterKerIiLi100EEvPT_S1_PiS2_i"
	.size	.L__unnamed_12, 38

	.type	.L__unnamed_13,@object          # @12
.L__unnamed_13:
	.asciz	"_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i"
	.size	.L__unnamed_13, 42

	.type	.L__unnamed_14,@object          # @13
.L__unnamed_14:
	.asciz	"_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i"
	.size	.L__unnamed_14, 38

	.type	.L__unnamed_15,@object          # @14
.L__unnamed_15:
	.asciz	"_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i"
	.size	.L__unnamed_15, 39

	.type	.L__unnamed_16,@object          # @15
.L__unnamed_16:
	.asciz	"_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i"
	.size	.L__unnamed_16, 43

	.type	.L__unnamed_17,@object          # @16
.L__unnamed_17:
	.asciz	"_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i"
	.size	.L__unnamed_17, 39

	.type	.L__unnamed_18,@object          # @17
.L__unnamed_18:
	.asciz	"_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i"
	.size	.L__unnamed_18, 40

	.type	.L__unnamed_19,@object          # @18
.L__unnamed_19:
	.asciz	"_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i"
	.size	.L__unnamed_19, 44

	.type	.L__unnamed_20,@object          # @19
.L__unnamed_20:
	.asciz	"_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i"
	.size	.L__unnamed_20, 40

	.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

	.type	.Lstr,@object                   # @str
	.section	.rodata.str1.1,"aMS",@progbits,1
.Lstr:
	.asciz	"Incorrect arraysizes, we only support 100, 1000 and 10000"
	.size	.Lstr, 58

	.type	.Lstr.1,@object                 # @str.1
.Lstr.1:
	.asciz	"Need 2 arguments"
	.size	.Lstr.1, 17

	.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 _Z30__device_stub__getNumOfBucketsPiS_i
	.addrsig_sym __gxx_personality_v0
	.addrsig_sym _Z26__device_stub__splitterKerIiLi100EEvPT_S1_PiS2_i
	.addrsig_sym _Z27__device_stub__bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z26__device_stub__sortBucketsIiLi100EEvPT_PiS2_S2_i
	.addrsig_sym _ZN7rocprim6detail33__device_stub__single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.addrsig_sym _ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.addrsig_sym _ZN7rocprim6detail46__device_stub__init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.addrsig_sym _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail31__device_stub__transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.addrsig_sym _ZN6thrust11hip_rocprim14__parallel_for21__device_stub__kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN7rocprim6detail33__device_stub__single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.addrsig_sym _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail35__device_stub__lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _Z26__device_stub__splitterKerIiLi1000EEvPT_S1_PiS2_i
	.addrsig_sym _Z27__device_stub__bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z26__device_stub__sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.addrsig_sym _Z26__device_stub__splitterKerIiLi10000EEvPT_S1_PiS2_i
	.addrsig_sym _Z27__device_stub__bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z26__device_stub__sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.addrsig_sym __hip_module_ctor
	.addrsig_sym __hip_module_dtor
	.addrsig_sym _Unwind_Resume
	.addrsig_sym _Z15getNumOfBucketsPiS_i
	.addrsig_sym _ZSt4cout
	.addrsig_sym _ZTIPKc
	.addrsig_sym _ZSt4cerr
	.addrsig_sym _Z11splitterKerIiLi100EEvPT_S1_PiS2_i
	.addrsig_sym _Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
	.addrsig_sym _ZTVN10__cxxabiv120__si_class_type_infoE
	.addrsig_sym _ZTSN6thrust6system12system_errorE
	.addrsig_sym _ZTISt13runtime_error
	.addrsig_sym _ZTIN6thrust6system12system_errorE
	.addrsig_sym _ZZN6thrust6system12hip_categoryEvE6result
	.addrsig_sym _ZGVZN6thrust6system12hip_categoryEvE6result
	.addrsig_sym __dso_handle
	.addrsig_sym _ZTSN6thrust6system11hip_rocprim6detail18hip_error_categoryE
	.addrsig_sym _ZTVN10__cxxabiv117__class_type_infoE
	.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 _ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.addrsig_sym _ZZN7rocprim6detail15get_device_archEiRNS0_11target_archEE10arch_cache
	.addrsig_sym _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.addrsig_sym _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.addrsig_sym _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.addrsig_sym _ZTSN6thrust6system6detail9bad_allocE
	.addrsig_sym _ZTISt9bad_alloc
	.addrsig_sym _ZTIN6thrust6system6detail9bad_allocE
	.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 _ZTSN6thrust26device_ptr_memory_resourceINS_6system3hip6detail19hip_memory_resourceIXadL_Z9hipMallocEEXadL_Z7hipFreeEENS_7pointerIvNS_11hip_rocprim3tagENS_16tagged_referenceIvS7_EENS_11use_defaultEEEEEEE
	.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 _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.addrsig_sym _ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.addrsig_sym _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.addrsig_sym _Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
	.addrsig_sym _Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.addrsig_sym _Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
	.addrsig_sym _Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.addrsig_sym _Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.addrsig_sym __hip_fatbin
	.addrsig_sym __hip_fatbin_wrapper
	.addrsig_sym __hip_cuid_

	.text
	.amdgcn_target "amdgcn-amd-amdhsa--gfx1100"
	.protected	_Z15getNumOfBucketsPiS_i ; -- Begin function _Z15getNumOfBucketsPiS_i
	.globl	_Z15getNumOfBucketsPiS_i
	.p2align	8
	.type	_Z15getNumOfBucketsPiS_i,@function
_Z15getNumOfBucketsPiS_i:               ; @_Z15getNumOfBucketsPiS_i
; %bb.0:
	s_load_b32 s3, s[0:1], 0x10
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_i32 s15, s3
	s_cbranch_scc1 .LBB0_2
; %bb.1:
	s_load_b128 s[4:7], s[0:1], 0x0
	s_mov_b32 s2, s15
	s_ashr_i32 s3, s15, 31
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[2:3], 2
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s4, s0
	s_addc_u32 s3, s5, s1
	s_load_b64 s[2:3], s[2:3], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s2, s3, s2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_i32 s2, s2, 0x66666667
	s_lshr_b32 s3, s2, 31
	s_ashr_i32 s2, s2, 3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s2, s2, s3
	v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2
	s_add_u32 s0, s6, s0
	s_addc_u32 s1, s7, s1
	global_store_b32 v0, v1, s[0:1]
.LBB0_2:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z15getNumOfBucketsPiS_i
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 20
		.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 2
		.amdhsa_next_free_sgpr 16
		.amdhsa_reserve_vcc 0
		.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	_Z15getNumOfBucketsPiS_i, .Lfunc_end0-_Z15getNumOfBucketsPiS_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 136
; NumSgprs: 16
; NumVgprs: 2
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 1
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 16
; NumVGPRsForWavesPerEU: 2
; 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._ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
	.protected	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE ; -- Begin function _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.globl	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
	.p2align	8
	.type	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,@function
_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE: ; @_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
; %bb.0:
	s_clause 0x2
	s_load_b32 s8, s[0:1], 0x24
	s_load_b64 s[2:3], s[0:1], 0x10
	s_load_b128 s[4:7], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_and_b32 s0, s8, 0xffff
	s_cmp_eq_u64 s[2:3], 0
	v_mad_u64_u32 v[1:2], null, s15, s0, v[0:1]
	s_cbranch_scc1 .LBB1_9
; %bb.1:
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	v_cmp_eq_u32_e32 vcc_lo, 0, v1
	s_cmp_le_u32 s6, s7
	v_cmp_eq_u32_e64 s0, s7, v1
	s_cselect_b32 s1, -1, 0
	s_and_b32 s8, s1, vcc_lo
	s_mov_b32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_or_b32 s0, s0, s8
	s_and_saveexec_b32 s8, s0
	s_cbranch_execz .LBB1_8
; %bb.2:
	s_add_i32 s0, s7, 32
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[0:1], 3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	s_add_u32 s0, s4, s0
	s_addc_u32 s1, s5, s1
	global_load_b64 v[4:5], v2, s[0:1] glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v3, 0xff, v5
	v_cmp_ne_u64_e32 vcc_lo, 0, v[2:3]
	s_cbranch_vccnz .LBB1_7
; %bb.3:                                ; %.preheader.i.i.preheader
	s_mov_b32 s7, 1
.LBB1_4:                                ; %.preheader.i.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB1_5 Depth 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_max_u32 s9, s7, 1
.LBB1_5:                                ;   Parent Loop BB1_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_i32 s9, s9, -1
	s_sleep 1
	s_cmp_eq_u32 s9, 0
	s_cbranch_scc0 .LBB1_5
; %bb.6:                                ;   in Loop: Header=BB1_4 Depth=1
	global_load_b64 v[4:5], v2, s[0:1] glc
	s_cmp_lt_u32 s7, 32
	s_cselect_b32 s9, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	s_cmp_lg_u32 s9, 0
	s_addc_u32 s7, s7, 0
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v3, 0xff, v5
	v_cmp_ne_u64_e32 vcc_lo, 0, v[2:3]
	s_cbranch_vccz .LBB1_4
.LBB1_7:                                ; %_ZN7rocprim6detail19lookback_scan_stateIiLb1ELb1EE3getEjRNS0_11prefix_flagERi.exit.i
	v_mov_b32_e32 v0, 0
	global_store_b32 v0, v4, s[2:3]
.LBB1_8:                                ; %Flow22
	s_or_b32 exec_lo, exec_lo, s8
.LBB1_9:                                ; %_ZN7rocprim6detail29access_indexed_lookback_valueINS0_19lookback_scan_stateIiLb1ELb1EEEZNS0_31init_lookback_scan_state_kernelIS3_EEvT_jjPNS5_10value_typeEEUliE_EEvS5_jjjT0_.exit
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e64 s6, v1
	s_cbranch_execz .LBB1_11
; %bb.10:
	v_dual_mov_b32 v3, 0 :: v_dual_add_nc_u32 v2, 32, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[4:5], 3, v[2:3]
	v_mov_b32_e32 v2, v3
	v_add_co_u32 v4, vcc_lo, s4, v4
	s_delay_alu instid0(VALU_DEP_3)
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	global_store_b64 v[4:5], v[2:3], off
.LBB1_11:
	s_or_b32 exec_lo, exec_lo, s0
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e32 32, v1
	s_cbranch_execz .LBB1_13
; %bb.12:
	v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0xff
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[0:1], 3, v[1:2]
	v_add_co_u32 v0, vcc_lo, s4, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, s5, v1, vcc_lo
	global_store_b64 v[0:1], v[2:3], off
.LBB1_13:                               ; %_ZN7rocprim6detail24init_lookback_scan_stateINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jj.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
		.amdhsa_group_segment_fixed_size 0
		.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 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._ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
.Lfunc_end1:
	.size	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE, .Lfunc_end1-_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 400
; 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._ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
	.protected	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE ; -- Begin function _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.globl	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
	.p2align	8
	.type	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,@function
_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE: ; @_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
; %bb.0:
	s_clause 0x2
	s_load_b32 s8, s[0:1], 0x24
	s_load_b64 s[2:3], s[0:1], 0x10
	s_load_b128 s[4:7], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_and_b32 s0, s8, 0xffff
	s_cmp_eq_u64 s[2:3], 0
	v_mad_u64_u32 v[1:2], null, s15, s0, v[0:1]
	s_cbranch_scc1 .LBB2_6
; %bb.1:
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	v_cmp_eq_u32_e32 vcc_lo, 0, v1
	s_cmp_le_u32 s6, s7
	v_cmp_eq_u32_e64 s0, s7, v1
	s_cselect_b32 s1, -1, 0
	s_and_b32 s8, s1, vcc_lo
	s_mov_b32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_or_b32 s0, s0, s8
	s_and_saveexec_b32 s8, s0
	s_cbranch_execz .LBB2_5
; %bb.2:
	s_add_i32 s0, s7, 32
	v_mov_b32_e32 v4, 0
	s_lshl_b64 s[0:1], s[0:1], 3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	s_add_u32 s0, s4, s0
	s_addc_u32 s1, s5, s1
	global_load_b64 v[2:3], v4, s[0:1] glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v5, 0xff, v3
	v_cmp_ne_u64_e32 vcc_lo, 0, v[4:5]
	s_cbranch_vccnz .LBB2_4
.LBB2_3:                                ; %.lr.ph.i.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b64 v[2:3], v4, s[0:1] glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v5, 0xff, v3
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_eq_u64_e32 vcc_lo, 0, v[4:5]
	s_cbranch_vccnz .LBB2_3
.LBB2_4:                                ; %_ZN7rocprim6detail19lookback_scan_stateIiLb0ELb1EE3getEjRNS0_11prefix_flagERi.exit.i
	v_mov_b32_e32 v0, 0
	global_store_b32 v0, v2, s[2:3]
.LBB2_5:                                ; %Flow22
	s_or_b32 exec_lo, exec_lo, s8
.LBB2_6:                                ; %_ZN7rocprim6detail29access_indexed_lookback_valueINS0_19lookback_scan_stateIiLb0ELb1EEEZNS0_31init_lookback_scan_state_kernelIS3_EEvT_jjPNS5_10value_typeEEUliE_EEvS5_jjjT0_.exit
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e64 s6, v1
	s_cbranch_execz .LBB2_8
; %bb.7:
	v_dual_mov_b32 v3, 0 :: v_dual_add_nc_u32 v2, 32, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[4:5], 3, v[2:3]
	v_mov_b32_e32 v2, v3
	v_add_co_u32 v4, vcc_lo, s4, v4
	s_delay_alu instid0(VALU_DEP_3)
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	global_store_b64 v[4:5], v[2:3], off
.LBB2_8:
	s_or_b32 exec_lo, exec_lo, s0
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e32 32, v1
	s_cbranch_execz .LBB2_10
; %bb.9:
	v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0xff
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[0:1], 3, v[1:2]
	v_add_co_u32 v0, vcc_lo, s4, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, s5, v1, vcc_lo
	global_store_b64 v[0:1], v[2:3], off
.LBB2_10:                               ; %_ZN7rocprim6detail24init_lookback_scan_stateINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jj.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
		.amdhsa_group_segment_fixed_size 0
		.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 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._ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,"axG",@progbits,_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE,comdat
.Lfunc_end2:
	.size	_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE, .Lfunc_end2-_ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 352
; 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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.protected	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb ; -- Begin function _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.globl	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.p2align	8
	.type	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: ; @_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
; %bb.0:
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 68
		.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 1
		.amdhsa_next_free_sgpr 1
		.amdhsa_reserve_vcc 0
		.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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
.Lfunc_end3:
	.size	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end3-_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 4
; NumSgprs: 0
; NumVgprs: 0
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 0
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 1
; NumVGPRsForWavesPerEU: 1
; 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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.protected	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb ; -- Begin function _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.globl	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.p2align	8
	.type	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: ; @_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
; %bb.0:
	s_clause 0x2
	s_load_b32 s8, s[0:1], 0x28
	s_load_b64 s[2:3], s[0:1], 0x10
	s_load_b128 s[4:7], s[0:1], 0x0
	v_lshlrev_b32_e32 v33, 2, v0
	v_lshrrev_b32_e32 v19, 3, v0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s9, s8, -1
	s_lshl_b32 s8, s15, 12
	s_lshl_b32 s10, s9, 12
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_u32 s14, s2, s10
	s_subb_u32 s33, s3, 0
	s_cmp_lg_u32 s15, s9
	s_mov_b32 s9, 0
	s_cselect_b32 s34, -1, 0
	s_lshl_b64 s[12:13], s[8:9], 2
	s_mov_b32 s2, -1
	s_add_u32 s8, s4, s12
	s_addc_u32 s9, s5, s13
	s_and_b32 vcc_lo, exec_lo, s34
	s_cbranch_vccz .LBB4_6
; %bb.1:
	v_add_co_u32 v5, s2, s8, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v6, null, s9, 0, s2
	s_clause 0x2
	global_load_b32 v2, v33, s[8:9] offset:1024
	global_load_b32 v3, v33, s[8:9] offset:2048
	global_load_b32 v4, v33, s[8:9] offset:3072
	v_add_co_u32 v10, vcc_lo, 0x1000, v5
	v_add_co_ci_u32_e32 v11, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v16, vcc_lo, v5, 0x2000
	v_add_co_ci_u32_e32 v17, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v12, vcc_lo, 0x2000, v5
	v_add_co_ci_u32_e32 v13, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v20, vcc_lo, 0x3000, v5
	s_clause 0x1
	global_load_b32 v1, v33, s[8:9]
	global_load_b32 v9, v[16:17], off
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v6, vcc_lo
	s_clause 0xa
	global_load_b32 v6, v[10:11], off offset:1024
	global_load_b32 v7, v[10:11], off offset:2048
	global_load_b32 v8, v[10:11], off offset:3072
	global_load_b32 v10, v[12:13], off offset:1024
	global_load_b32 v11, v[12:13], off offset:2048
	global_load_b32 v12, v[12:13], off offset:3072
	global_load_b32 v13, v[20:21], off
	global_load_b32 v14, v[20:21], off offset:1024
	global_load_b32 v15, v[20:21], off offset:2048
	global_load_b32 v5, v[16:17], off offset:-4096
	global_load_b32 v16, v[20:21], off offset:3072
	v_and_b32_e32 v17, 28, v19
	s_mov_b64 s[2:3], 0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v33, v17
.LBB4_2:                                ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v18, v1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v17, v18
	v_add_nc_u32_e32 v17, 0x420, v17
	s_cbranch_scc0 .LBB4_2
; %bb.3:
	v_lshlrev_b32_e32 v17, 1, v0
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_and_b32_e32 v17, 0x1fc, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 6, v17
.LBB4_4:                                ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v18, v17
	v_add_nc_u32_e32 v17, 4, v17
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v18
	s_cbranch_scc1 .LBB4_4
; %bb.5:                                ; %Flow148
	s_mov_b32 s2, 0
	s_branch .LBB4_7
.LBB4_6:
                                        ; implicit-def: $vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16
.LBB4_7:                                ; %Flow150
	s_and_b32 vcc_lo, exec_lo, s2
	v_cmp_gt_u32_e64 s2, s14, v0
	s_cbranch_vccz .LBB4_44
; %bb.8:
	s_load_b32 s16, s[8:9], 0x0
	v_add_co_u32 v17, s3, s8, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v18, null, s9, 0, s3
	s_waitcnt lgkmcnt(0)
	s_mov_b32 s17, s16
	s_mov_b32 s18, s16
	s_mov_b32 s19, s16
	s_mov_b32 s20, s16
	s_mov_b32 s21, s16
	s_mov_b32 s22, s16
	s_mov_b32 s23, s16
	s_mov_b32 s24, s16
	s_mov_b32 s25, s16
	s_mov_b32 s26, s16
	s_mov_b32 s27, s16
	s_mov_b32 s28, s16
	s_mov_b32 s29, s16
	s_mov_b32 s30, s16
	s_mov_b32 s31, s16
	v_dual_mov_b32 v1, s16 :: v_dual_mov_b32 v2, s17
	v_dual_mov_b32 v3, s18 :: v_dual_mov_b32 v4, s19
	v_dual_mov_b32 v5, s20 :: v_dual_mov_b32 v6, s21
	v_dual_mov_b32 v7, s22 :: v_dual_mov_b32 v8, s23
	v_dual_mov_b32 v9, s24 :: v_dual_mov_b32 v10, s25
	v_dual_mov_b32 v11, s26 :: v_dual_mov_b32 v12, s27
	v_dual_mov_b32 v13, s28 :: v_dual_mov_b32 v14, s29
	v_dual_mov_b32 v15, s30 :: v_dual_mov_b32 v16, s31
	s_and_saveexec_b32 s3, s2
	s_cbranch_execz .LBB4_10
; %bb.9:
	global_load_b32 v20, v[17:18], off
	v_dual_mov_b32 v1, s16 :: v_dual_mov_b32 v2, s17
	v_dual_mov_b32 v3, s18 :: v_dual_mov_b32 v4, s19
	v_dual_mov_b32 v5, s20 :: v_dual_mov_b32 v6, s21
	v_dual_mov_b32 v7, s22 :: v_dual_mov_b32 v8, s23
	v_dual_mov_b32 v9, s24 :: v_dual_mov_b32 v10, s25
	v_dual_mov_b32 v11, s26 :: v_dual_mov_b32 v12, s27
	v_dual_mov_b32 v13, s28 :: v_dual_mov_b32 v14, s29
	v_dual_mov_b32 v15, s30 :: v_dual_mov_b32 v16, s31
	s_waitcnt vmcnt(0)
	v_mov_b32_e32 v1, v20
.LBB4_10:
	s_or_b32 exec_lo, exec_lo, s3
	v_or_b32_e32 v20, 0x100, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_12
; %bb.11:
	global_load_b32 v2, v[17:18], off offset:1024
.LBB4_12:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x200, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_14
; %bb.13:
	global_load_b32 v3, v[17:18], off offset:2048
.LBB4_14:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x300, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_16
; %bb.15:
	global_load_b32 v4, v[17:18], off offset:3072
.LBB4_16:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x400, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_18
; %bb.17:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v5, v[20:21], off
.LBB4_18:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x500, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_20
; %bb.19:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v6, v[20:21], off offset:1024
.LBB4_20:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x600, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_22
; %bb.21:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v7, v[20:21], off offset:2048
.LBB4_22:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x700, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_24
; %bb.23:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v8, v[20:21], off offset:3072
.LBB4_24:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x800, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_26
; %bb.25:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v9, v[20:21], off
.LBB4_26:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x900, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_28
; %bb.27:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v10, v[20:21], off offset:1024
.LBB4_28:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xa00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_30
; %bb.29:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v11, v[20:21], off offset:2048
.LBB4_30:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xb00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_32
; %bb.31:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v12, v[20:21], off offset:3072
.LBB4_32:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xc00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_34
; %bb.33:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v13, v[20:21], off
.LBB4_34:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xd00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_36
; %bb.35:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v14, v[20:21], off offset:1024
.LBB4_36:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xe00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_38
; %bb.37:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v15, v[20:21], off offset:2048
.LBB4_38:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xf00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB4_40
; %bb.39:
	v_add_co_u32 v16, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v17, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v16, v[16:17], off offset:3072
.LBB4_40:                               ; %_ZN7rocprim25block_load_direct_stripedILj256EN6thrust10device_ptrIiEEiLj16ENS1_16device_referenceIiEEEEvjT0_RAT2__T1_jT3_.exit.i.i
	s_or_b32 exec_lo, exec_lo, s2
	v_and_b32_e32 v17, 28, v19
	s_mov_b64 s[2:3], 0
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 2, v17
.LBB4_41:                               ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v18, v1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v17, v18
	v_add_nc_u32_e32 v17, 0x420, v17
	s_cbranch_scc0 .LBB4_41
; %bb.42:
	v_lshlrev_b32_e32 v17, 1, v0
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_and_b32_e32 v17, 0x1fc, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 6, v17
.LBB4_43:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v18, v17
	v_add_nc_u32_e32 v17, 4, v17
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v18
	s_cbranch_scc0 .LBB4_43
.LBB4_44:                               ; %_ZN7rocprim10block_loadIiLj256ELj16ELNS_17block_load_methodE3ELj1ELj1EE4loadIN6thrust10device_ptrIiEENS4_16device_referenceIiEEEEvT_RA16_ijT0_RNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_load_b64 s[16:17], s[0:1], 0x20
	v_add_nc_u32_e32 v37, v2, v1
	v_mbcnt_lo_u32_b32 v35, -1, 0
	v_lshrrev_b32_e32 v34, 5, v0
	v_or_b32_e32 v36, 31, v0
	s_cmp_lg_u32 s15, 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc0 .LBB4_71
; %bb.45:
	v_add3_u32 v17, v37, v3, v4
	v_and_b32_e32 v18, 15, v35
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add3_u32 v17, v17, v5, v6
	v_cmp_ne_u32_e32 vcc_lo, 0, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v7, v8
	v_add3_u32 v17, v17, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v11, v12
	v_add3_u32 v17, v17, v13, v14
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v15, v16
	v_mov_b32_dpp v19, v17 row_shr:1 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v18
	v_add_nc_u32_e32 v17, v19, v17
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:2 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v19
	v_mov_b32_dpp v19, v17 row_shr:4 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 7, v18
	v_add_nc_u32_e32 v17, v17, v19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:8 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v18, 0, v19, vcc_lo
	v_bfe_i32 v19, v35, 4, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v18
	ds_swizzle_b32 v18, v17 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v18, v19, v18
	v_add_nc_u32_e32 v17, v17, v18
	v_cmpx_eq_u32_e64 v36, v0
	s_cbranch_execz .LBB4_47
; %bb.46:
	v_lshlrev_b32_e32 v18, 2, v34
	ds_store_b32 v18, v17
.LBB4_47:
	s_or_b32 exec_lo, exec_lo, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s2, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB4_49
; %bb.48:
	ds_load_b32 v18, v33
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v20, v18 row_shr:1 row_mask:0xf bank_mask:0xf
	v_and_b32_e32 v19, 7, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cmp_ne_u32_e32 vcc_lo, 0, v19
	v_cndmask_b32_e32 v20, 0, v20, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v20, v18
	v_mov_b32_dpp v20, v18 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v20, 0, v20, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v19
	v_add_nc_u32_e32 v18, v18, v20
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v20, v18 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v20, vcc_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v18, v19
	ds_store_b32 v33, v18
.LBB4_49:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s2
	v_cmp_gt_u32_e32 vcc_lo, 32, v0
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
                                        ; implicit-def: $vgpr24
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB4_51
; %bb.50:
	v_lshl_add_u32 v18, v34, 2, -4
	ds_load_b32 v24, v18
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, v24, v17
.LBB4_51:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE19exclusive_scan_implIN6thrust4plusIvEELj256EEENSt9enable_ifIXgtT0_clL_ZNS_16device_warp_sizeEvEEEvE4typeEjiRiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v18, -1, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_i32_e64 s2, 0, v18
	v_cndmask_b32_e64 v18, v18, v35, s2
	v_cmp_eq_u32_e64 s2, 0, v35
	s_delay_alu instid0(VALU_DEP_2)
	v_lshlrev_b32_e32 v18, 2, v18
	ds_bpermute_b32 v25, v18, v17
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB4_70
; %bb.52:
	v_mov_b32_e32 v20, 0
	ds_load_b32 v17, v20 offset:28
	s_and_saveexec_b32 s8, s2
	s_cbranch_execz .LBB4_54
; %bb.53:
	s_add_i32 s10, s15, 32
	s_mov_b32 s11, 0
	v_mov_b32_e32 v18, 1
	s_lshl_b64 s[10:11], s[10:11], 3
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s10, s16, s10
	s_addc_u32 s11, s17, s11
	s_waitcnt lgkmcnt(0)
	global_store_b64 v20, v[17:18], s[10:11]
.LBB4_54:
	s_or_b32 exec_lo, exec_lo, s8
	v_xad_u32 v18, v35, -1, s15
	s_mov_b32 s9, 0
	s_mov_b32 s8, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v19, 32, v18
	v_lshlrev_b64 v[19:20], 3, v[19:20]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v22, vcc_lo, s16, v19
	v_add_co_ci_u32_e32 v23, vcc_lo, s17, v20, vcc_lo
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v19, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_eq_u16_e32 0, v19
	s_cbranch_execz .LBB4_57
.LBB4_55:                               ; %.lr.ph.i.i.i.i.i.i.i.i.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v19, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_cmp_ne_u16_e32 vcc_lo, 0, v19
	s_or_b32 s9, vcc_lo, s9
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB4_55
; %bb.56:                               ; %Flow141
	s_or_b32 exec_lo, exec_lo, s9
.LBB4_57:                               ; %Flow142
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s8
	v_cmp_ne_u32_e32 vcc_lo, 31, v35
	v_lshlrev_b32_e64 v27, v35, -1
	v_add_nc_u32_e32 v28, 1, v35
	v_add_nc_u32_e32 v30, 2, v35
	v_add_nc_u32_e32 v32, 4, v35
	v_add_co_ci_u32_e32 v19, vcc_lo, 0, v35, vcc_lo
	v_add_nc_u32_e32 v40, 8, v35
	v_add_nc_u32_e32 v42, 16, v35
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v26, 2, v19
	ds_bpermute_b32 v22, v26, v20
	v_and_b32_e32 v19, 0xff, v21
	v_cmp_eq_u16_e32 vcc_lo, 2, v19
	v_and_or_b32 v19, v27, vcc_lo, 0x80000000
	v_cmp_gt_u32_e32 vcc_lo, 30, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_ctz_i32_b32_e32 v19, v19
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v28, v19
	s_waitcnt lgkmcnt(0)
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_cndmask_b32 v22, 0, v22 :: v_dual_lshlrev_b32 v23, 1, v23
	v_add_lshl_u32 v29, v23, v35, 2
	v_cmp_gt_u32_e32 vcc_lo, 28, v35
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v22, v20
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v30, v19
	ds_bpermute_b32 v22, v29, v20
	v_lshlrev_b32_e32 v23, 2, v23
	v_add_lshl_u32 v31, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_gt_u32_e32 vcc_lo, 24, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v32, v19
	ds_bpermute_b32 v22, v31, v20
	v_lshlrev_b32_e32 v23, 3, v23
	v_add_lshl_u32 v39, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_gt_u32_e32 vcc_lo, 16, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v40, v19
	ds_bpermute_b32 v22, v39, v20
	v_lshlrev_b32_e32 v23, 4, v23
	v_add_lshl_u32 v41, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v42, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	ds_bpermute_b32 v22, v41, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v19, 0, v22, vcc_lo
	v_dual_mov_b32 v19, 0 :: v_dual_add_nc_u32 v20, v20, v19
.LBB4_58:                               ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB4_61 Depth 2
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_mov_b32 v38, v20 :: v_dual_and_b32 v21, 0xff, v21
	v_cmp_ne_u16_e32 vcc_lo, 2, v21
	v_cndmask_b32_e64 v21, 0, 1, vcc_lo
	;;#ASMSTART
	;;#ASMEND
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_ne_u32_e32 vcc_lo, 0, v21
	s_cmp_lg_u32 vcc_lo, exec_lo
	s_cbranch_scc1 .LBB4_64
; %bb.59:                               ;   in Loop: Header=BB4_58 Depth=1
	v_lshlrev_b64 v[20:21], 3, v[18:19]
	s_mov_b32 s8, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v22, vcc_lo, s16, v20
	v_add_co_ci_u32_e32 v23, vcc_lo, s17, v21, vcc_lo
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v43, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_eq_u16_e32 0, v43
	s_cbranch_execz .LBB4_63
; %bb.60:                               ; %.lr.ph.i.i24.i.i.i.i.i.i.i.preheader
                                        ;   in Loop: Header=BB4_58 Depth=1
	s_mov_b32 s9, 0
.LBB4_61:                               ; %.lr.ph.i.i24.i.i.i.i.i.i.i
                                        ;   Parent Loop BB4_58 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v43, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_cmp_ne_u16_e32 vcc_lo, 0, v43
	s_or_b32 s9, vcc_lo, s9
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB4_61
; %bb.62:                               ; %Flow137
                                        ;   in Loop: Header=BB4_58 Depth=1
	s_or_b32 exec_lo, exec_lo, s9
.LBB4_63:                               ; %Flow138
                                        ;   in Loop: Header=BB4_58 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	s_or_b32 exec_lo, exec_lo, s8
	ds_bpermute_b32 v23, v26, v20
	v_and_b32_e32 v22, 0xff, v21
	v_subrev_nc_u32_e32 v18, 32, v18
	s_mov_b32 s8, 0
	v_cmp_eq_u16_e32 vcc_lo, 2, v22
	v_and_or_b32 v22, v27, vcc_lo, 0x80000000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ctz_i32_b32_e32 v22, v22
	v_cmp_le_u32_e32 vcc_lo, v28, v22
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v30, v22
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v20, v23, v20
	ds_bpermute_b32 v23, v29, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v32, v22
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v31, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v40, v22
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v39, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v42, v22
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v41, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v23, vcc_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_add3_u32 v20, v22, v38, v20
	s_branch .LBB4_65
.LBB4_64:                               ;   in Loop: Header=BB4_58 Depth=1
	s_mov_b32 s8, -1
                                        ; implicit-def: $vgpr20
                                        ; implicit-def: $vgpr21
.LBB4_65:                               ; %Flow139
                                        ;   in Loop: Header=BB4_58 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_b32 vcc_lo, exec_lo, s8
	s_cbranch_vccz .LBB4_58
; %bb.66:                               ; %_ZN7rocprim6detail23lookback_scan_prefix_opIiN6thrust4plusIvEENS0_19lookback_scan_stateIiLb0ELb1EEELNS0_25lookback_scan_determinismE0EE10get_prefixEv.exit.i.i.i.i.i.i
	s_and_saveexec_b32 s8, s2
	s_cbranch_execz .LBB4_68
; %bb.67:
	s_add_i32 s10, s15, 32
	s_mov_b32 s11, 0
	v_dual_mov_b32 v19, 0 :: v_dual_mov_b32 v18, 2
	s_lshl_b64 s[10:11], s[10:11], 3
	v_add_nc_u32_e32 v17, v38, v17
	s_add_u32 s10, s16, s10
	s_addc_u32 s11, s17, s11
	global_store_b64 v19, v[17:18], s[10:11]
.LBB4_68:                               ; %_ZN7rocprim6detail23lookback_scan_prefix_opIiN6thrust4plusIvEENS0_19lookback_scan_stateIiLb0ELb1EEELNS0_25lookback_scan_determinismE0EEclEi.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s8
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB4_70
; %bb.69:
	v_mov_b32_e32 v17, 0
	ds_store_b32 v17, v38 offset:28
.LBB4_70:                               ; %Flow143
	s_or_b32 exec_lo, exec_lo, s3
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e64 v18, v25, v24, s2
	v_cmp_ne_u32_e32 vcc_lo, 0, v0
	v_mov_b32_e32 v17, 0
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	v_cndmask_b32_e32 v18, 0, v18, vcc_lo
	ds_load_b32 v17, v17 offset:28
	s_mov_b32 s2, 0
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, v17, v18
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v17, v1
	v_add_nc_u32_e32 v19, v18, v2
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v19, v3
	v_add_nc_u32_e32 v21, v20, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v21, v5
	v_add_nc_u32_e32 v23, v22, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v24, v23, v7
	v_add_nc_u32_e32 v25, v24, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v26, v25, v9
	v_add_nc_u32_e32 v27, v26, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v28, v27, v11
	v_add_nc_u32_e32 v29, v28, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v30, v29, v13
	v_add_nc_u32_e32 v31, v30, v14
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v32, v31, v15
	s_branch .LBB4_72
.LBB4_71:
	s_mov_b32 s2, -1
                                        ; implicit-def: $vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31_vgpr32
.LBB4_72:                               ; %Flow146
	s_load_b128 s[8:11], s[0:1], 0x30
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB4_85
; %bb.73:
	s_load_b32 s2, s[0:1], 0x40
	s_waitcnt lgkmcnt(0)
	s_bitcmp0_b32 s2, 0
	s_cbranch_scc1 .LBB4_75
; %bb.74:
	s_add_u32 s2, s4, -4
	s_addc_u32 s3, s5, -1
	s_load_b32 s2, s[2:3], 0x0
	s_load_b32 s3, s[8:9], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s2, s3, s2
	s_branch .LBB4_76
.LBB4_75:
	s_load_b32 s2, s[0:1], 0x18
.LBB4_76:
	v_add3_u32 v17, v37, v3, v4
	s_mov_b32 s3, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v5, v6
	v_add3_u32 v17, v17, v7, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v9, v10
	v_add3_u32 v17, v17, v11, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v13, v14
	v_add3_u32 v16, v17, v15, v16
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v18, v16 row_shr:1 row_mask:0xf bank_mask:0xf
	v_and_b32_e32 v17, 15, v35
	v_cmp_ne_u32_e32 vcc_lo, 0, v17
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v18, 0, v18, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v17
	v_add_nc_u32_e32 v16, v18, v16
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v18, v16 row_shr:2 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v18, 0, v18, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v17
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v16, v16, v18
	v_mov_b32_dpp v18, v16 row_shr:4 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v18, 0, v18, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 7, v17
	v_add_nc_u32_e32 v16, v16, v18
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v18, v16 row_shr:8 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v17, 0, v18, vcc_lo
	v_bfe_i32 v18, v35, 4, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v16, v16, v17
	ds_swizzle_b32 v17, v16 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v17, v18, v17
	v_add_nc_u32_e32 v16, v16, v17
	v_cmpx_eq_u32_e64 v36, v0
	s_cbranch_execz .LBB4_78
; %bb.77:
	v_lshlrev_b32_e32 v17, 2, v34
	ds_store_b32 v17, v16
.LBB4_78:
	s_or_b32 exec_lo, exec_lo, s3
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB4_80
; %bb.79:
	ds_load_b32 v17, v33
	v_and_b32_e32 v18, 7, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e32 vcc_lo, 0, v18
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v19, v17 row_shr:1 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v19, v17
	v_mov_b32_dpp v19, v17 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v18
	v_add_nc_u32_e32 v17, v17, v19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v18, 0, v19, vcc_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v18
	ds_store_b32 v33, v17
.LBB4_80:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s3
	v_mov_b32_e32 v17, s2
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB4_82
; %bb.81:
	v_lshl_add_u32 v17, v34, 2, -4
	ds_load_b32 v17, v17
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, s2, v17
.LBB4_82:                               ; %_ZN7rocprim6detail19lookback_block_scanILb1ENS_10block_scanIiLj256ELNS_20block_scan_algorithmE0ELj1ELj1EEEiLj16EN6thrust4plusIvEEEENSt9enable_ifIXT_EvE4typeERAT2__T1_SB_RSB_RNT0_12storage_typeET3_.exit.i
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v18, -1, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v16, v17, v16
	v_cmp_gt_i32_e32 vcc_lo, 0, v18
	v_cndmask_b32_e32 v18, v18, v35, vcc_lo
	v_cmp_eq_u32_e32 vcc_lo, 0, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	v_lshlrev_b32_e32 v18, 2, v18
	ds_bpermute_b32 v16, v18, v16
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v16, v16, v17, vcc_lo
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	v_cndmask_b32_e64 v17, v16, s2, vcc_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v17, v1
	v_add_nc_u32_e32 v19, v18, v2
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v19, v3
	v_add_nc_u32_e32 v21, v20, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v21, v5
	v_add_nc_u32_e32 v23, v22, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v24, v23, v7
	v_add_nc_u32_e32 v25, v24, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v26, v25, v9
	v_add_nc_u32_e32 v27, v26, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v28, v27, v11
	v_add_nc_u32_e32 v29, v28, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v30, v29, v13
	v_add_nc_u32_e32 v31, v30, v14
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v32, v31, v15
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB4_84
; %bb.83:
	v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v2, 2
	ds_load_b32 v1, v3 offset:28
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v1, s2, v1
	global_store_b64 v3, v[1:2], s[16:17] offset:256
.LBB4_84:                               ; %Flow144
	s_or_b32 exec_lo, exec_lo, s3
.LBB4_85:
	v_lshlrev_b32_e32 v1, 1, v0
	s_and_not1_b32 vcc_lo, exec_lo, s34
	s_mov_b32 s2, -1
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	v_and_b32_e32 v1, 0x1fc, v1
	buffer_gl0_inv
	v_lshl_add_u32 v35, v0, 6, v1
	s_cbranch_vccnz .LBB4_91
; %bb.86:                               ; %.preheader31.preheader
	s_delay_alu instid0(VALU_DEP_1)
	v_mov_b32_e32 v1, v35
	s_mov_b64 s[2:3], 0
.LBB4_87:                               ; %.preheader31
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	v_movrels_b32_e32 v2, v17
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v1, v2
	v_add_nc_u32_e32 v1, 4, v1
	s_cbranch_scc0 .LBB4_87
; %bb.88:
	v_dual_mov_b32 v1, v17 :: v_dual_mov_b32 v2, v18
	v_dual_mov_b32 v3, v19 :: v_dual_mov_b32 v4, v20
	v_dual_mov_b32 v5, v21 :: v_dual_mov_b32 v6, v22
	v_dual_mov_b32 v7, v23 :: v_dual_mov_b32 v8, v24
	v_dual_mov_b32 v9, v25 :: v_dual_mov_b32 v10, v26
	v_dual_mov_b32 v11, v27 :: v_dual_mov_b32 v12, v28
	v_dual_mov_b32 v13, v29 :: v_dual_mov_b32 v14, v30
	v_dual_mov_b32 v15, v31 :: v_dual_mov_b32 v16, v32
	v_add_lshl_u32 v36, v0, v34, 2
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
.LBB4_89:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v37, v36
	v_add_nc_u32_e32 v36, 0x420, v36
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v37
	s_cbranch_scc1 .LBB4_89
; %bb.90:                               ; %_ZN7rocprim11block_storeIiLj256ELj16ELNS_18block_store_methodE3ELj1ELj1EE5storeIN6thrust10device_ptrIiEEEEvT_RA16_iRNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_add_u32 s4, s6, s12
	s_addc_u32 s5, s7, s13
	v_add_co_u32 v40, s2, s4, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v41, null, s5, 0, s2
	s_clause 0x2
	global_store_b32 v33, v2, s[4:5] offset:1024
	global_store_b32 v33, v3, s[4:5] offset:2048
	global_store_b32 v33, v4, s[4:5] offset:3072
	v_add_co_u32 v36, vcc_lo, v40, 0x2000
	v_add_co_ci_u32_e32 v37, vcc_lo, 0, v41, vcc_lo
	v_add_co_u32 v2, vcc_lo, 0x3000, v40
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v41, vcc_lo
	v_add_co_u32 v38, vcc_lo, 0x1000, v40
	v_add_co_ci_u32_e32 v39, vcc_lo, 0, v41, vcc_lo
	s_mov_b32 s2, 0
	v_add_co_u32 v4, vcc_lo, 0x2000, v40
	s_clause 0x1
	global_store_b32 v[2:3], v15, off offset:2048
	global_store_b32 v[36:37], v5, off offset:-4096
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v41, vcc_lo
	s_clause 0xa
	global_store_b32 v33, v1, s[4:5]
	global_store_b32 v[36:37], v9, off
	global_store_b32 v[38:39], v6, off offset:1024
	global_store_b32 v[38:39], v7, off offset:2048
	global_store_b32 v[38:39], v8, off offset:3072
	global_store_b32 v[4:5], v10, off offset:1024
	global_store_b32 v[4:5], v11, off offset:2048
	global_store_b32 v[4:5], v12, off offset:3072
	global_store_b32 v[2:3], v13, off
	global_store_b32 v[2:3], v14, off offset:1024
	global_store_b32 v[2:3], v16, off offset:3072
.LBB4_91:                               ; %Flow133
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB4_134
; %bb.92:                               ; %.preheader.preheader
	s_mov_b64 s[2:3], 0
.LBB4_93:                               ; %.preheader
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	v_movrels_b32_e32 v1, v17
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v35, v1
	v_add_nc_u32_e32 v35, 4, v35
	s_cbranch_scc0 .LBB4_93
; %bb.94:
	v_add_lshl_u32 v1, v0, v34, 2
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB4_95:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v2, v1
	v_add_nc_u32_e32 v1, 0x420, v1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v17, v2
	s_cbranch_scc1 .LBB4_95
; %bb.96:                               ; %_ZN7rocprim14block_exchangeIiLj256ELj16ELj1ELj1EE18blocked_to_stripedIiEEvRA16_KiRA16_T_RNS1_13storage_type_E.exit.i.i
	s_add_u32 s2, s6, s12
	s_addc_u32 s3, s7, s13
	v_add_co_u32 v2, s2, s2, v33
	v_mov_b32_e32 v1, 0
	v_add_co_ci_u32_e64 v3, null, s3, 0, s2
	s_mov_b32 s2, exec_lo
	v_cmpx_gt_u32_e64 s14, v0
	s_cbranch_execz .LBB4_98
; %bb.97:
	global_store_b32 v[2:3], v17, off
.LBB4_98:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x100, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_100
; %bb.99:
	global_store_b32 v[2:3], v18, off offset:1024
.LBB4_100:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x200, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_102
; %bb.101:
	global_store_b32 v[2:3], v19, off offset:2048
.LBB4_102:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x300, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_104
; %bb.103:
	global_store_b32 v[2:3], v20, off offset:3072
.LBB4_104:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x400, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_106
; %bb.105:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v21, off
.LBB4_106:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x500, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_108
; %bb.107:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v22, off offset:1024
.LBB4_108:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x600, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_110
; %bb.109:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v23, off offset:2048
.LBB4_110:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x700, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_112
; %bb.111:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v24, off offset:3072
.LBB4_112:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x800, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_114
; %bb.113:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v25, off
.LBB4_114:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x900, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_116
; %bb.115:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v26, off offset:1024
.LBB4_116:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xa00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_118
; %bb.117:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v27, off offset:2048
.LBB4_118:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xb00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_120
; %bb.119:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v28, off offset:3072
.LBB4_120:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xc00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_122
; %bb.121:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v29, off
.LBB4_122:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xd00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_124
; %bb.123:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v30, off offset:1024
.LBB4_124:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xe00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_126
; %bb.125:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v31, off offset:2048
.LBB4_126:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xf00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB4_128
; %bb.127:
	v_add_co_u32 v2, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[2:3], v32, off offset:3072
.LBB4_128:                              ; %_ZN7rocprim11block_storeIiLj256ELj16ELNS_18block_store_methodE3ELj1ELj1EE5storeIN6thrust10device_ptrIiEEEEvT_RA16_ijRNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_or_b32 exec_lo, exec_lo, s2
	s_load_b32 s0, s[0:1], 0x40
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s0, s0, 0x10008
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s0, 0
	s_cbranch_scc1 .LBB4_134
; %bb.129:
	s_add_u32 s0, s14, -1
	s_addc_u32 s1, s33, -1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshr_b64 s[2:3], s[0:1], 4
	s_mov_b32 s1, exec_lo
	v_cmpx_eq_u64_e64 s[2:3], v[0:1]
	s_cbranch_execz .LBB4_134
; %bb.130:                              ; %.preheader.i
	s_and_b32 s0, s0, 15
	v_mov_b32_e32 v1, 0
	s_mov_b32 m0, s0
	s_mov_b32 s1, 0
	v_movrels_b32_e32 v0, v17
	s_mov_b64 s[2:3], 0
.LBB4_131:                              ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_lg_u64 s[0:1], s[2:3]
	s_cbranch_scc1 .LBB4_133
; %bb.132:                              ;   in Loop: Header=BB4_131 Depth=1
	global_store_b32 v1, v0, s[10:11]
.LBB4_133:                              ;   in Loop: Header=BB4_131 Depth=1
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	s_cbranch_scc0 .LBB4_131
.LBB4_134:                              ; %_ZN7rocprim6detail25lookback_scan_kernel_implILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiNS0_19lookback_scan_stateIiLb0ELb1EEEEENSt9enable_ifIXcl27is_lookback_kernel_runnableIT6_EEEvE4typeET2_T3_mT5_T4_SE_jPSJ_SL_bb.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
		.amdhsa_group_segment_fixed_size 16896
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 68
		.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 44
		.amdhsa_next_free_sgpr 35
		.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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
.Lfunc_end4:
	.size	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end4-_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 5640
; NumSgprs: 37
; NumVgprs: 44
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 16896 bytes/workgroup (compile time only)
; SGPRBlocks: 4
; VGPRBlocks: 5
; NumSGPRsForWavesPerEU: 37
; NumVGPRsForWavesPerEU: 44
; Occupancy: 14
; 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
	.section	.text._ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,"axG",@progbits,_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,comdat
	.protected	_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_ ; -- Begin function _ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.globl	_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
	.p2align	8
	.type	_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,@function
_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_: ; @_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
; %bb.0:
	s_clause 0x2
	s_load_b32 s2, s[0:1], 0x20
	s_load_b128 s[4:7], s[0:1], 0x0
	s_load_b64 s[16:17], s[0:1], 0x10
	s_mov_b32 s21, 0
	s_lshl_b32 s20, s15, 12
	v_lshlrev_b32_e32 v3, 2, v0
	s_lshl_b64 s[18:19], s[20:21], 2
	s_waitcnt lgkmcnt(0)
	s_add_i32 s2, s2, -1
	s_add_u32 s0, s4, s18
	s_addc_u32 s1, s5, s19
	v_add_co_u32 v1, s0, s0, v3
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v2, null, s1, 0, s0
	s_cmp_lg_u32 s15, s2
	s_mov_b32 s0, -1
	s_cbranch_scc0 .LBB5_2
; %bb.1:
	v_add_co_u32 v4, vcc_lo, 0x1000, v1
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v2, vcc_lo
	v_add_co_u32 v6, vcc_lo, v1, 0x2000
	v_add_co_ci_u32_e32 v7, vcc_lo, 0, v2, vcc_lo
	v_add_co_u32 v8, vcc_lo, 0x2000, v1
	v_add_co_ci_u32_e32 v9, vcc_lo, 0, v2, vcc_lo
	v_add_co_u32 v10, vcc_lo, 0x3000, v1
	global_load_b32 v13, v[6:7], off
	v_add_co_ci_u32_e32 v11, vcc_lo, 0, v2, vcc_lo
	s_clause 0xe
	global_load_b32 v14, v[1:2], off
	global_load_b32 v15, v[1:2], off offset:1024
	global_load_b32 v16, v[1:2], off offset:2048
	global_load_b32 v17, v[1:2], off offset:3072
	global_load_b32 v18, v[4:5], off offset:1024
	global_load_b32 v19, v[4:5], off offset:2048
	global_load_b32 v20, v[4:5], off offset:3072
	global_load_b32 v21, v[8:9], off offset:1024
	global_load_b32 v22, v[8:9], off offset:2048
	global_load_b32 v23, v[8:9], off offset:3072
	global_load_b32 v24, v[10:11], off
	global_load_b32 v25, v[10:11], off offset:1024
	global_load_b32 v26, v[6:7], off offset:-4096
	global_load_b32 v27, v[10:11], off offset:2048
	global_load_b32 v4, v[10:11], off offset:3072
	s_add_u32 s2, s16, s18
	s_addc_u32 s3, s17, s19
	v_add_co_u32 v11, s1, s2, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_add_co_ci_u32_e64 v12, null, s3, 0, s1
	s_mov_b32 s0, 0
	v_add_co_u32 v5, vcc_lo, 0x1000, v11
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v12, vcc_lo
	v_add_co_u32 v7, vcc_lo, v11, 0x2000
	v_add_co_ci_u32_e32 v8, vcc_lo, 0, v12, vcc_lo
	v_add_co_u32 v9, vcc_lo, 0x2000, v11
	v_add_co_ci_u32_e32 v10, vcc_lo, 0, v12, vcc_lo
	v_add_co_u32 v11, vcc_lo, 0x3000, v11
	s_mov_b32 s21, -1
	v_add_co_ci_u32_e32 v12, vcc_lo, 0, v12, vcc_lo
	s_waitcnt vmcnt(15)
	global_store_b32 v[7:8], v13, off
	s_waitcnt vmcnt(14)
	global_store_b32 v3, v14, s[2:3]
	s_waitcnt vmcnt(13)
	global_store_b32 v3, v15, s[2:3] offset:1024
	s_waitcnt vmcnt(12)
	global_store_b32 v3, v16, s[2:3] offset:2048
	s_waitcnt vmcnt(11)
	global_store_b32 v3, v17, s[2:3] offset:3072
	s_waitcnt vmcnt(10)
	global_store_b32 v[5:6], v18, off offset:1024
	s_waitcnt vmcnt(9)
	global_store_b32 v[5:6], v19, off offset:2048
	s_waitcnt vmcnt(8)
	global_store_b32 v[5:6], v20, off offset:3072
	s_waitcnt vmcnt(7)
	global_store_b32 v[9:10], v21, off offset:1024
	s_waitcnt vmcnt(6)
	global_store_b32 v[9:10], v22, off offset:2048
	s_waitcnt vmcnt(5)
	global_store_b32 v[9:10], v23, off offset:3072
	s_waitcnt vmcnt(4)
	global_store_b32 v[11:12], v24, off
	s_waitcnt vmcnt(3)
	global_store_b32 v[11:12], v25, off offset:1024
	s_waitcnt vmcnt(2)
	global_store_b32 v[7:8], v26, off offset:-4096
	s_waitcnt vmcnt(1)
	global_store_b32 v[11:12], v27, off offset:2048
	s_branch .LBB5_3
.LBB5_2:
                                        ; implicit-def: $vgpr4
.LBB5_3:                                ; %Flow
	s_and_not1_b32 vcc_lo, exec_lo, s0
	s_cbranch_vccnz .LBB5_67
; %bb.4:
	s_sub_i32 s15, s6, s20
                                        ; implicit-def: $vgpr5
	s_delay_alu instid0(SALU_CYCLE_1)
	v_cmp_gt_u32_e32 vcc_lo, s15, v0
	s_and_saveexec_b32 s0, vcc_lo
	s_cbranch_execz .LBB5_6
; %bb.5:
	global_load_b32 v5, v[1:2], off
.LBB5_6:
	s_or_b32 exec_lo, exec_lo, s0
	s_waitcnt vmcnt(0)
	v_or_b32_e32 v4, 0x100, v0
                                        ; implicit-def: $vgpr6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s0, s15, v4
	s_and_saveexec_b32 s1, s0
	s_cbranch_execz .LBB5_8
; %bb.7:
	global_load_b32 v6, v[1:2], off offset:1024
.LBB5_8:
	s_or_b32 exec_lo, exec_lo, s1
	v_or_b32_e32 v4, 0x200, v0
                                        ; implicit-def: $vgpr7
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s1, s15, v4
	s_and_saveexec_b32 s2, s1
	s_cbranch_execz .LBB5_10
; %bb.9:
	global_load_b32 v7, v[1:2], off offset:2048
.LBB5_10:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x300, v0
                                        ; implicit-def: $vgpr8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s2, s15, v4
	s_and_saveexec_b32 s3, s2
	s_cbranch_execz .LBB5_12
; %bb.11:
	global_load_b32 v8, v[1:2], off offset:3072
.LBB5_12:
	s_or_b32 exec_lo, exec_lo, s3
	v_or_b32_e32 v4, 0x400, v0
                                        ; implicit-def: $vgpr9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s3, s15, v4
	s_and_saveexec_b32 s5, s3
	s_cbranch_execz .LBB5_14
; %bb.13:
	v_add_co_u32 v9, s4, 0x1000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v10, s4, 0, v2, s4
	global_load_b32 v9, v[9:10], off
.LBB5_14:
	s_or_b32 exec_lo, exec_lo, s5
	v_or_b32_e32 v4, 0x500, v0
                                        ; implicit-def: $vgpr10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s4, s15, v4
	s_and_saveexec_b32 s6, s4
	s_cbranch_execz .LBB5_16
; %bb.15:
	v_add_co_u32 v10, s5, 0x1000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v11, s5, 0, v2, s5
	global_load_b32 v10, v[10:11], off offset:1024
.LBB5_16:
	s_or_b32 exec_lo, exec_lo, s6
	v_or_b32_e32 v4, 0x600, v0
                                        ; implicit-def: $vgpr11
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s5, s15, v4
	s_and_saveexec_b32 s7, s5
	s_cbranch_execz .LBB5_18
; %bb.17:
	v_add_co_u32 v11, s6, 0x1000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v12, s6, 0, v2, s6
	global_load_b32 v11, v[11:12], off offset:2048
.LBB5_18:
	s_or_b32 exec_lo, exec_lo, s7
	v_or_b32_e32 v4, 0x700, v0
                                        ; implicit-def: $vgpr12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s6, s15, v4
	s_and_saveexec_b32 s8, s6
	s_cbranch_execz .LBB5_20
; %bb.19:
	v_add_co_u32 v12, s7, 0x1000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v13, s7, 0, v2, s7
	global_load_b32 v12, v[12:13], off offset:3072
.LBB5_20:
	s_or_b32 exec_lo, exec_lo, s8
	v_or_b32_e32 v4, 0x800, v0
                                        ; implicit-def: $vgpr13
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s7, s15, v4
	s_and_saveexec_b32 s9, s7
	s_cbranch_execz .LBB5_22
; %bb.21:
	v_add_co_u32 v13, s8, 0x2000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v14, s8, 0, v2, s8
	global_load_b32 v13, v[13:14], off
.LBB5_22:
	s_or_b32 exec_lo, exec_lo, s9
	v_or_b32_e32 v4, 0x900, v0
                                        ; implicit-def: $vgpr14
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s8, s15, v4
	s_and_saveexec_b32 s10, s8
	s_cbranch_execz .LBB5_24
; %bb.23:
	v_add_co_u32 v14, s9, 0x2000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v15, s9, 0, v2, s9
	global_load_b32 v14, v[14:15], off offset:1024
.LBB5_24:
	s_or_b32 exec_lo, exec_lo, s10
	v_or_b32_e32 v4, 0xa00, v0
                                        ; implicit-def: $vgpr15
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s9, s15, v4
	s_and_saveexec_b32 s11, s9
	s_cbranch_execz .LBB5_26
; %bb.25:
	v_add_co_u32 v15, s10, 0x2000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v16, s10, 0, v2, s10
	global_load_b32 v15, v[15:16], off offset:2048
.LBB5_26:
	s_or_b32 exec_lo, exec_lo, s11
	v_or_b32_e32 v4, 0xb00, v0
                                        ; implicit-def: $vgpr16
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s10, s15, v4
	s_and_saveexec_b32 s12, s10
	s_cbranch_execz .LBB5_28
; %bb.27:
	v_add_co_u32 v16, s11, 0x2000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v17, s11, 0, v2, s11
	global_load_b32 v16, v[16:17], off offset:3072
.LBB5_28:
	s_or_b32 exec_lo, exec_lo, s12
	v_or_b32_e32 v4, 0xc00, v0
                                        ; implicit-def: $vgpr17
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s11, s15, v4
	s_and_saveexec_b32 s13, s11
	s_cbranch_execz .LBB5_30
; %bb.29:
	v_add_co_u32 v17, s12, 0x3000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v18, s12, 0, v2, s12
	global_load_b32 v17, v[17:18], off
.LBB5_30:
	s_or_b32 exec_lo, exec_lo, s13
	v_or_b32_e32 v4, 0xd00, v0
                                        ; implicit-def: $vgpr18
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s12, s15, v4
	s_and_saveexec_b32 s14, s12
	s_cbranch_execz .LBB5_32
; %bb.31:
	v_add_co_u32 v18, s13, 0x3000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v19, s13, 0, v2, s13
	global_load_b32 v18, v[18:19], off offset:1024
.LBB5_32:
	s_or_b32 exec_lo, exec_lo, s14
	v_or_b32_e32 v4, 0xe00, v0
                                        ; implicit-def: $vgpr19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s13, s15, v4
	s_and_saveexec_b32 s20, s13
	s_cbranch_execz .LBB5_34
; %bb.33:
	v_add_co_u32 v19, s14, 0x3000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s14, 0, v2, s14
	global_load_b32 v19, v[19:20], off offset:2048
.LBB5_34:
	s_or_b32 exec_lo, exec_lo, s20
	v_or_b32_e32 v0, 0xf00, v0
                                        ; implicit-def: $vgpr4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s21, s15, v0
	s_and_saveexec_b32 s15, s21
	s_cbranch_execz .LBB5_36
; %bb.35:
	v_add_co_u32 v0, s14, 0x3000, v1
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, s14, 0, v2, s14
	global_load_b32 v4, v[0:1], off offset:3072
.LBB5_36:                               ; %_ZN7rocprim25block_load_direct_stripedILj256EPiiLj16EEEvjT0_RAT2__T1_j.exit.i
	s_or_b32 exec_lo, exec_lo, s15
	s_add_u32 s14, s16, s18
	s_addc_u32 s15, s17, s19
	v_add_co_u32 v0, s14, s14, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_add_co_ci_u32_e64 v1, null, s15, 0, s14
	s_and_saveexec_b32 s14, vcc_lo
	s_xor_b32 s14, exec_lo, s14
	s_cbranch_execz .LBB5_38
; %bb.37:
	global_store_b32 v[0:1], v5, off
.LBB5_38:
	s_or_b32 exec_lo, exec_lo, s14
	s_and_saveexec_b32 s14, s0
	s_cbranch_execz .LBB5_40
; %bb.39:
	s_waitcnt vmcnt(0)
	global_store_b32 v[0:1], v6, off offset:1024
.LBB5_40:
	s_or_b32 exec_lo, exec_lo, s14
	s_and_saveexec_b32 s0, s1
	s_cbranch_execz .LBB5_42
; %bb.41:
	s_waitcnt vmcnt(0)
	global_store_b32 v[0:1], v7, off offset:2048
.LBB5_42:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s2
	s_cbranch_execz .LBB5_44
; %bb.43:
	s_waitcnt vmcnt(0)
	global_store_b32 v[0:1], v8, off offset:3072
.LBB5_44:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s3
	s_cbranch_execz .LBB5_46
; %bb.45:
	v_add_co_u32 v5, vcc_lo, 0x1000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v9, off
.LBB5_46:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s4
	s_cbranch_execz .LBB5_48
; %bb.47:
	v_add_co_u32 v5, vcc_lo, 0x1000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v10, off offset:1024
.LBB5_48:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s5
	s_cbranch_execz .LBB5_50
; %bb.49:
	v_add_co_u32 v5, vcc_lo, 0x1000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v11, off offset:2048
.LBB5_50:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s6
	s_cbranch_execz .LBB5_52
; %bb.51:
	v_add_co_u32 v5, vcc_lo, 0x1000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v12, off offset:3072
.LBB5_52:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s7
	s_cbranch_execz .LBB5_54
; %bb.53:
	v_add_co_u32 v5, vcc_lo, 0x2000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v13, off
.LBB5_54:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s8
	s_cbranch_execz .LBB5_56
; %bb.55:
	v_add_co_u32 v5, vcc_lo, 0x2000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v14, off offset:1024
.LBB5_56:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s9
	s_cbranch_execz .LBB5_58
; %bb.57:
	v_add_co_u32 v5, vcc_lo, 0x2000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v15, off offset:2048
.LBB5_58:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s10
	s_cbranch_execz .LBB5_60
; %bb.59:
	v_add_co_u32 v5, vcc_lo, 0x2000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v16, off offset:3072
.LBB5_60:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s11
	s_cbranch_execz .LBB5_62
; %bb.61:
	v_add_co_u32 v5, vcc_lo, 0x3000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v17, off
.LBB5_62:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s12
	s_cbranch_execz .LBB5_64
; %bb.63:
	v_add_co_u32 v5, vcc_lo, 0x3000, v0
	s_waitcnt vmcnt(0)
	v_add_co_ci_u32_e32 v6, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[5:6], v18, off offset:1024
.LBB5_64:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s13
	s_cbranch_execz .LBB5_66
; %bb.65:
	v_add_co_u32 v0, vcc_lo, 0x3000, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v1, vcc_lo
	s_waitcnt vmcnt(0)
	global_store_b32 v[0:1], v19, off offset:2048
.LBB5_66:
	s_or_b32 exec_lo, exec_lo, s0
.LBB5_67:                               ; %Flow12
	s_and_saveexec_b32 s0, s21
	s_cbranch_execz .LBB5_69
; %bb.68:                               ; %_ZN7rocprim26block_store_direct_stripedILj256EPiiLj16EEEvjT0_RAT2__T1_j.exit.sink.split.i
	s_add_u32 s0, s16, s18
	s_addc_u32 s1, s17, s19
	v_add_co_u32 v0, s0, s0, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_ci_u32_e64 v1, null, s1, 0, s0
	v_add_co_u32 v0, vcc_lo, 0x3000, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v1, vcc_lo
	s_waitcnt vmcnt(0)
	global_store_b32 v[0:1], v4, off offset:3072
.LBB5_69:                               ; %_ZN7rocprim6detail21transform_kernel_implILj256ELj16EiPiS2_NS_8identityIiEEEEvT2_mT3_T4_.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 288
		.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 28
		.amdhsa_next_free_sgpr 22
		.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._ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,"axG",@progbits,_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_,comdat
.Lfunc_end5:
	.size	_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_, .Lfunc_end5-_ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 2152
; NumSgprs: 24
; NumVgprs: 28
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 3
; NumSGPRsForWavesPerEU: 24
; NumVGPRsForWavesPerEU: 28
; 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
	.section	.text._ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
	.protected	_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_ ; -- Begin function _ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.globl	_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.p2align	8
	.type	_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,@function
_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_: ; @_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
; %bb.0:
	s_load_b128 s[20:23], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_load_b32 s4, s[20:21], 0x0
	v_cmp_gt_u32_e32 vcc_lo, s22, v0
	s_waitcnt lgkmcnt(0)
	s_mov_b32 s5, s4
	s_mov_b32 s6, s4
	s_mov_b32 s7, s4
	s_mov_b32 s8, s4
	s_mov_b32 s9, s4
	s_mov_b32 s10, s4
	s_mov_b32 s11, s4
	s_mov_b32 s12, s4
	s_mov_b32 s13, s4
	s_mov_b32 s14, s4
	s_mov_b32 s15, s4
	s_mov_b32 s16, s4
	s_mov_b32 s17, s4
	s_mov_b32 s18, s4
	s_mov_b32 s19, s4
	v_dual_mov_b32 v1, s4 :: v_dual_lshlrev_b32 v32, 2, v0
	v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v3, s6
	v_dual_mov_b32 v4, s7 :: v_dual_mov_b32 v5, s8
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_u32 v17, s2, s20, v32
	v_add_co_ci_u32_e64 v18, null, s21, 0, s2
	v_dual_mov_b32 v6, s9 :: v_dual_mov_b32 v7, s10
	v_dual_mov_b32 v8, s11 :: v_dual_mov_b32 v9, s12
	v_dual_mov_b32 v10, s13 :: v_dual_mov_b32 v11, s14
	v_dual_mov_b32 v12, s15 :: v_dual_mov_b32 v13, s16
	v_dual_mov_b32 v14, s17 :: v_dual_mov_b32 v15, s18
	v_mov_b32_e32 v16, s19
	s_and_saveexec_b32 s2, vcc_lo
	s_cbranch_execz .LBB6_2
; %bb.1:
	global_load_b32 v19, v[17:18], off
	v_dual_mov_b32 v1, s4 :: v_dual_mov_b32 v2, s5
	v_dual_mov_b32 v3, s6 :: v_dual_mov_b32 v4, s7
	v_dual_mov_b32 v5, s8 :: v_dual_mov_b32 v6, s9
	v_dual_mov_b32 v7, s10 :: v_dual_mov_b32 v8, s11
	v_dual_mov_b32 v9, s12 :: v_dual_mov_b32 v10, s13
	v_dual_mov_b32 v11, s14 :: v_dual_mov_b32 v12, s15
	v_dual_mov_b32 v13, s16 :: v_dual_mov_b32 v14, s17
	v_dual_mov_b32 v15, s18 :: v_dual_mov_b32 v16, s19
	s_waitcnt vmcnt(0)
	v_mov_b32_e32 v1, v19
.LBB6_2:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v19, 0x100, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s2, s22, v19
	s_and_saveexec_b32 s3, s2
	s_cbranch_execz .LBB6_4
; %bb.3:
	global_load_b32 v2, v[17:18], off offset:1024
.LBB6_4:
	s_or_b32 exec_lo, exec_lo, s3
	v_or_b32_e32 v19, 0x200, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s3, s22, v19
	s_and_saveexec_b32 s4, s3
	s_cbranch_execz .LBB6_6
; %bb.5:
	global_load_b32 v3, v[17:18], off offset:2048
.LBB6_6:
	s_or_b32 exec_lo, exec_lo, s4
	v_or_b32_e32 v19, 0x300, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s4, s22, v19
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB6_8
; %bb.7:
	global_load_b32 v4, v[17:18], off offset:3072
.LBB6_8:
	s_or_b32 exec_lo, exec_lo, s5
	v_or_b32_e32 v19, 0x400, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s5, s22, v19
	s_and_saveexec_b32 s7, s5
	s_cbranch_execz .LBB6_10
; %bb.9:
	v_add_co_u32 v19, s6, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s6, 0, v18, s6
	global_load_b32 v5, v[19:20], off
.LBB6_10:
	s_or_b32 exec_lo, exec_lo, s7
	v_or_b32_e32 v19, 0x500, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s6, s22, v19
	s_and_saveexec_b32 s8, s6
	s_cbranch_execz .LBB6_12
; %bb.11:
	v_add_co_u32 v19, s7, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s7, 0, v18, s7
	global_load_b32 v6, v[19:20], off offset:1024
.LBB6_12:
	s_or_b32 exec_lo, exec_lo, s8
	v_or_b32_e32 v19, 0x600, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s7, s22, v19
	s_and_saveexec_b32 s9, s7
	s_cbranch_execz .LBB6_14
; %bb.13:
	v_add_co_u32 v19, s8, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s8, 0, v18, s8
	global_load_b32 v7, v[19:20], off offset:2048
.LBB6_14:
	s_or_b32 exec_lo, exec_lo, s9
	v_or_b32_e32 v19, 0x700, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s8, s22, v19
	s_and_saveexec_b32 s10, s8
	s_cbranch_execz .LBB6_16
; %bb.15:
	v_add_co_u32 v19, s9, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s9, 0, v18, s9
	global_load_b32 v8, v[19:20], off offset:3072
.LBB6_16:
	s_or_b32 exec_lo, exec_lo, s10
	v_or_b32_e32 v19, 0x800, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s9, s22, v19
	s_and_saveexec_b32 s11, s9
	s_cbranch_execz .LBB6_18
; %bb.17:
	v_add_co_u32 v19, s10, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s10, 0, v18, s10
	global_load_b32 v9, v[19:20], off
.LBB6_18:
	s_or_b32 exec_lo, exec_lo, s11
	v_or_b32_e32 v19, 0x900, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s10, s22, v19
	s_and_saveexec_b32 s12, s10
	s_cbranch_execz .LBB6_20
; %bb.19:
	v_add_co_u32 v19, s11, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s11, 0, v18, s11
	global_load_b32 v10, v[19:20], off offset:1024
.LBB6_20:
	s_or_b32 exec_lo, exec_lo, s12
	v_or_b32_e32 v19, 0xa00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s11, s22, v19
	s_and_saveexec_b32 s13, s11
	s_cbranch_execz .LBB6_22
; %bb.21:
	v_add_co_u32 v19, s12, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s12, 0, v18, s12
	global_load_b32 v11, v[19:20], off offset:2048
.LBB6_22:
	s_or_b32 exec_lo, exec_lo, s13
	v_or_b32_e32 v19, 0xb00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s12, s22, v19
	s_and_saveexec_b32 s14, s12
	s_cbranch_execz .LBB6_24
; %bb.23:
	v_add_co_u32 v19, s13, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s13, 0, v18, s13
	global_load_b32 v12, v[19:20], off offset:3072
.LBB6_24:
	s_or_b32 exec_lo, exec_lo, s14
	v_or_b32_e32 v19, 0xc00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s13, s22, v19
	s_and_saveexec_b32 s15, s13
	s_cbranch_execz .LBB6_26
; %bb.25:
	v_add_co_u32 v19, s14, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s14, 0, v18, s14
	global_load_b32 v13, v[19:20], off
.LBB6_26:
	s_or_b32 exec_lo, exec_lo, s15
	v_or_b32_e32 v19, 0xd00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s14, s22, v19
	s_and_saveexec_b32 s16, s14
	s_cbranch_execz .LBB6_28
; %bb.27:
	v_add_co_u32 v19, s15, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s15, 0, v18, s15
	global_load_b32 v14, v[19:20], off offset:1024
.LBB6_28:
	s_or_b32 exec_lo, exec_lo, s16
	v_or_b32_e32 v19, 0xe00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s15, s22, v19
	s_and_saveexec_b32 s17, s15
	s_cbranch_execz .LBB6_30
; %bb.29:
	v_add_co_u32 v19, s16, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v20, s16, 0, v18, s16
	global_load_b32 v15, v[19:20], off offset:2048
.LBB6_30:
	s_or_b32 exec_lo, exec_lo, s17
	v_or_b32_e32 v19, 0xf00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s16, s22, v19
	s_and_saveexec_b32 s18, s16
	s_cbranch_execz .LBB6_32
; %bb.31:
	v_add_co_u32 v16, s17, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v17, s17, 0, v18, s17
	global_load_b32 v16, v[16:17], off offset:3072
.LBB6_32:                               ; %_ZN7rocprim25block_load_direct_stripedILj256EN6thrust10device_ptrIiEEiLj16ENS1_16device_referenceIiEEEEvjT0_RAT2__T1_jT3_.exit.i.i
	s_or_b32 exec_lo, exec_lo, s18
	v_lshrrev_b32_e32 v33, 5, v0
	s_mov_b64 s[18:19], 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v17, 2, v33
	v_lshl_add_u32 v18, v0, 2, v17
.LBB6_33:                               ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v19, v1
	s_addc_u32 s19, s19, 0
	s_cmp_eq_u32 s18, 16
	ds_store_b32 v18, v19
	v_add_nc_u32_e32 v18, 0x420, v18
	s_cbranch_scc0 .LBB6_33
; %bb.34:
	v_lshrrev_b32_e32 v34, 1, v0
	s_mov_b64 s[18:19], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_lshlrev_b32_e32 v18, 2, v34
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v18, v0, 6, v18
.LBB6_35:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v19, v18
	v_add_nc_u32_e32 v18, 4, v18
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_addc_u32 s19, s19, 0
	s_cmp_lg_u32 s18, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v19
	s_cbranch_scc1 .LBB6_35
; %bb.36:                               ; %_ZN7rocprim10block_loadIiLj256ELj16ELNS_17block_load_methodE3ELj1ELj1EE4loadIN6thrust10device_ptrIiEENS4_16device_referenceIiEEEEvT_RA16_ijT0_RNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	v_add_nc_u32_e32 v18, v2, v1
	s_mov_b32 s18, exec_lo
	s_barrier
	buffer_gl0_inv
	v_add3_u32 v18, v18, v3, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v18, v18, v5, v6
	v_add3_u32 v18, v18, v7, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v18, v18, v9, v10
	v_add3_u32 v18, v18, v11, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_add3_u32 v19, v18, v13, v14
	v_mbcnt_lo_u32_b32 v18, -1, 0
	v_add3_u32 v16, v19, v15, v16
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_and_b32_e32 v19, 15, v18
	v_mov_b32_dpp v20, v16 row_shr:1 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e64 s17, 0, v19
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_cmp_lt_u32_e64 s17, 1, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v16, v20, v16
	v_mov_b32_dpp v20, v16 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_cmp_lt_u32_e64 s17, 3, v19
	v_add_nc_u32_e32 v16, v16, v20
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v20, v16 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_cmp_lt_u32_e64 s17, 7, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v16, v16, v20
	v_mov_b32_dpp v20, v16 row_shr:8 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v19, 0, v20, s17
	v_bfe_i32 v20, v18, 4, 1
	v_add_nc_u32_e32 v16, v16, v19
	ds_swizzle_b32 v19, v16 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v19, v20, v19
	v_or_b32_e32 v20, 31, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v16, v16, v19
	v_cmpx_eq_u32_e64 v20, v0
	s_cbranch_execz .LBB6_38
; %bb.37:
	ds_store_b32 v17, v16
.LBB6_38:
	s_or_b32 exec_lo, exec_lo, s18
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s18, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB6_40
; %bb.39:
	ds_load_b32 v17, v32
	v_and_b32_e32 v19, 7, v18
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e64 s17, 0, v19
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v20, v17 row_shr:1 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_cmp_lt_u32_e64 s17, 1, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v20, v17
	v_mov_b32_dpp v20, v17 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_cmp_lt_u32_e64 s17, 3, v19
	v_add_nc_u32_e32 v17, v17, v20
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v20, v17 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v19, 0, v20, s17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v19
	ds_store_b32 v32, v17
.LBB6_40:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s18
	s_load_b32 s18, s[0:1], 0x10
	s_mov_b32 s19, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_mov_b32_e32 v17, s18
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB6_42
; %bb.41:
	v_lshl_add_u32 v17, v33, 2, -4
	ds_load_b32 v17, v17
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, s18, v17
.LBB6_42:                               ; %_ZN7rocprim6detail22single_scan_block_scanILb1ENS_10block_scanIiLj256ELNS_20block_scan_algorithmE0ELj1ELj1EEEiLj16EN6thrust4plusIvEEEENSt9enable_ifIXT_EvE4typeERAT2__T1_SD_SB_RNT0_12storage_typeET3_.exit.i
	s_or_b32 exec_lo, exec_lo, s19
	v_add_nc_u32_e32 v19, -1, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v16, v17, v16
	s_barrier
	buffer_gl0_inv
	v_cmp_gt_i32_e64 s17, 0, v19
	v_cndmask_b32_e64 v19, v19, v18, s17
	v_cmp_eq_u32_e64 s17, 0, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v19, 2, v19
	ds_bpermute_b32 v16, v19, v16
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e64 v16, v16, v17, s17
	v_cmp_eq_u32_e64 s17, 0, v0
	v_cndmask_b32_e64 v16, v16, s18, s17
	s_mov_b64 s[18:19], 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v17, v16, v1
	v_lshlrev_b32_e32 v1, 4, v0
	v_add_nc_u32_e32 v18, v17, v2
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_lshl_u32 v1, v34, v1, 2
	v_add_nc_u32_e32 v19, v18, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v19, v4
	v_add_nc_u32_e32 v21, v20, v5
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v21, v6
	v_add_nc_u32_e32 v23, v22, v7
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v24, v23, v8
	v_add_nc_u32_e32 v25, v24, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v26, v25, v10
	v_add_nc_u32_e32 v27, v26, v11
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v28, v27, v12
	v_add_nc_u32_e32 v29, v28, v13
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v30, v29, v14
	v_add_nc_u32_e32 v31, v30, v15
.LBB6_43:                               ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	v_movrels_b32_e32 v2, v16
	s_addc_u32 s19, s19, 0
	s_cmp_eq_u32 s18, 16
	ds_store_b32 v1, v2
	v_add_nc_u32_e32 v1, 4, v1
	s_cbranch_scc0 .LBB6_43
; %bb.44:
	v_add_lshl_u32 v0, v0, v33, 2
	s_mov_b64 s[18:19], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
.LBB6_45:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v1, v0
	v_add_nc_u32_e32 v0, 0x420, v0
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_addc_u32 s19, s19, 0
	s_cmp_lg_u32 s18, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v16, v1
	s_cbranch_scc1 .LBB6_45
; %bb.46:                               ; %_ZN7rocprim14block_exchangeIiLj256ELj16ELj1ELj1EE18blocked_to_stripedIiEEvRA16_KiRA16_T_RNS1_13storage_type_E.exit.i.i
	s_load_b64 s[0:1], s[0:1], 0x18
	s_waitcnt lgkmcnt(0)
	v_add_co_u32 v0, s0, s0, v32
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v1, null, s1, 0, s0
	s_and_saveexec_b32 s0, vcc_lo
	s_cbranch_execz .LBB6_48
; %bb.47:
	global_store_b32 v[0:1], v16, off
.LBB6_48:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s2
	s_cbranch_execz .LBB6_50
; %bb.49:
	global_store_b32 v[0:1], v17, off offset:1024
.LBB6_50:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s3
	s_cbranch_execz .LBB6_52
; %bb.51:
	global_store_b32 v[0:1], v18, off offset:2048
.LBB6_52:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s4
	s_cbranch_execz .LBB6_54
; %bb.53:
	global_store_b32 v[0:1], v19, off offset:3072
.LBB6_54:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s5
	s_cbranch_execz .LBB6_56
; %bb.55:
	v_add_co_u32 v2, vcc_lo, 0x1000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v20, off
.LBB6_56:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s6
	s_cbranch_execz .LBB6_58
; %bb.57:
	v_add_co_u32 v2, vcc_lo, 0x1000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v21, off offset:1024
.LBB6_58:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s7
	s_cbranch_execz .LBB6_60
; %bb.59:
	v_add_co_u32 v2, vcc_lo, 0x1000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v22, off offset:2048
.LBB6_60:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s8
	s_cbranch_execz .LBB6_62
; %bb.61:
	v_add_co_u32 v2, vcc_lo, 0x1000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v23, off offset:3072
.LBB6_62:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s9
	s_cbranch_execz .LBB6_64
; %bb.63:
	v_add_co_u32 v2, vcc_lo, 0x2000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v24, off
.LBB6_64:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s10
	s_cbranch_execz .LBB6_66
; %bb.65:
	v_add_co_u32 v2, vcc_lo, 0x2000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v25, off offset:1024
.LBB6_66:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s11
	s_cbranch_execz .LBB6_68
; %bb.67:
	v_add_co_u32 v2, vcc_lo, 0x2000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v26, off offset:2048
.LBB6_68:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s12
	s_cbranch_execz .LBB6_70
; %bb.69:
	v_add_co_u32 v2, vcc_lo, 0x2000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v27, off offset:3072
.LBB6_70:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s13
	s_cbranch_execz .LBB6_72
; %bb.71:
	v_add_co_u32 v2, vcc_lo, 0x3000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v28, off
.LBB6_72:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s14
	s_cbranch_execz .LBB6_74
; %bb.73:
	v_add_co_u32 v2, vcc_lo, 0x3000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v29, off offset:1024
.LBB6_74:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s15
	s_cbranch_execz .LBB6_76
; %bb.75:
	v_add_co_u32 v2, vcc_lo, 0x3000, v0
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[2:3], v30, off offset:2048
.LBB6_76:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s16
	s_cbranch_execz .LBB6_78
; %bb.77:
	v_add_co_u32 v0, vcc_lo, 0x3000, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v1, vcc_lo
	global_store_b32 v[0:1], v31, off offset:3072
.LBB6_78:                               ; %_ZN7rocprim6detail23single_scan_kernel_implILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiEEvT1_mT4_T2_T3_.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
		.amdhsa_group_segment_fixed_size 16896
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 35
		.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
	.section	.text._ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
.Lfunc_end6:
	.size	_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, .Lfunc_end6-_ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 2696
; NumSgprs: 26
; NumVgprs: 35
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 16896 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 4
; NumSGPRsForWavesPerEU: 26
; NumVGPRsForWavesPerEU: 35
; Occupancy: 14
; 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_ptrIiEEiEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,comdat
	.protected	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_ ; -- Begin function _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.globl	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_
	.p2align	8
	.type	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,@function
_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_: ; @_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_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 .LBB7_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
.LBB7_2:                                ; %.critedge24
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_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_ptrIiEEiEEmLj1EEEvT0_T1_S9_,"axG",@progbits,_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_,comdat
.Lfunc_end7:
	.size	_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_T1_S9_, .Lfunc_end7-_ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.protected	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb ; -- Begin function _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.globl	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.p2align	8
	.type	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: ; @_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
; %bb.0:
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
		.amdhsa_group_segment_fixed_size 0
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 68
		.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 1
		.amdhsa_next_free_sgpr 1
		.amdhsa_reserve_vcc 0
		.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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
.Lfunc_end8:
	.size	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end8-_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 4
; NumSgprs: 0
; NumVgprs: 0
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 0 bytes/workgroup (compile time only)
; SGPRBlocks: 0
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 1
; NumVGPRsForWavesPerEU: 1
; 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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
	.protected	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb ; -- Begin function _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.globl	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
	.p2align	8
	.type	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,@function
_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb: ; @_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
; %bb.0:
	s_clause 0x2
	s_load_b32 s8, s[0:1], 0x28
	s_load_b64 s[2:3], s[0:1], 0x10
	s_load_b128 s[4:7], s[0:1], 0x0
	v_lshlrev_b32_e32 v33, 2, v0
	v_lshrrev_b32_e32 v19, 3, v0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s9, s8, -1
	s_lshl_b32 s8, s15, 12
	s_lshl_b32 s10, s9, 12
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_u32 s14, s2, s10
	s_subb_u32 s33, s3, 0
	s_cmp_lg_u32 s15, s9
	s_mov_b32 s9, 0
	s_cselect_b32 s34, -1, 0
	s_lshl_b64 s[12:13], s[8:9], 2
	s_mov_b32 s2, -1
	s_add_u32 s4, s4, s12
	s_addc_u32 s5, s5, s13
	s_and_b32 vcc_lo, exec_lo, s34
	s_cbranch_vccz .LBB9_6
; %bb.1:
	v_add_co_u32 v5, s2, s4, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v6, null, s5, 0, s2
	s_clause 0x2
	global_load_b32 v2, v33, s[4:5] offset:1024
	global_load_b32 v3, v33, s[4:5] offset:2048
	global_load_b32 v4, v33, s[4:5] offset:3072
	v_add_co_u32 v10, vcc_lo, 0x1000, v5
	v_add_co_ci_u32_e32 v11, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v16, vcc_lo, v5, 0x2000
	v_add_co_ci_u32_e32 v17, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v12, vcc_lo, 0x2000, v5
	v_add_co_ci_u32_e32 v13, vcc_lo, 0, v6, vcc_lo
	v_add_co_u32 v20, vcc_lo, 0x3000, v5
	s_clause 0x1
	global_load_b32 v1, v33, s[4:5]
	global_load_b32 v9, v[16:17], off
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v6, vcc_lo
	s_clause 0xa
	global_load_b32 v6, v[10:11], off offset:1024
	global_load_b32 v7, v[10:11], off offset:2048
	global_load_b32 v8, v[10:11], off offset:3072
	global_load_b32 v10, v[12:13], off offset:1024
	global_load_b32 v11, v[12:13], off offset:2048
	global_load_b32 v12, v[12:13], off offset:3072
	global_load_b32 v13, v[20:21], off
	global_load_b32 v14, v[20:21], off offset:1024
	global_load_b32 v15, v[20:21], off offset:2048
	global_load_b32 v5, v[16:17], off offset:-4096
	global_load_b32 v16, v[20:21], off offset:3072
	v_and_b32_e32 v17, 28, v19
	s_mov_b64 s[2:3], 0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v33, v17
.LBB9_2:                                ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v18, v1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v17, v18
	v_add_nc_u32_e32 v17, 0x420, v17
	s_cbranch_scc0 .LBB9_2
; %bb.3:
	v_lshlrev_b32_e32 v17, 1, v0
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_and_b32_e32 v17, 0x1fc, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 6, v17
.LBB9_4:                                ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v18, v17
	v_add_nc_u32_e32 v17, 4, v17
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v18
	s_cbranch_scc1 .LBB9_4
; %bb.5:                                ; %Flow146
	s_mov_b32 s2, 0
	s_branch .LBB9_7
.LBB9_6:
                                        ; implicit-def: $vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16
.LBB9_7:                                ; %Flow148
	s_and_b32 vcc_lo, exec_lo, s2
	v_cmp_gt_u32_e64 s2, s14, v0
	s_cbranch_vccz .LBB9_44
; %bb.8:
	s_load_b32 s16, s[4:5], 0x0
	v_add_co_u32 v17, s3, s4, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v18, null, s5, 0, s3
	s_waitcnt lgkmcnt(0)
	s_mov_b32 s17, s16
	s_mov_b32 s18, s16
	s_mov_b32 s19, s16
	s_mov_b32 s20, s16
	s_mov_b32 s21, s16
	s_mov_b32 s22, s16
	s_mov_b32 s23, s16
	s_mov_b32 s24, s16
	s_mov_b32 s25, s16
	s_mov_b32 s26, s16
	s_mov_b32 s27, s16
	s_mov_b32 s28, s16
	s_mov_b32 s29, s16
	s_mov_b32 s30, s16
	s_mov_b32 s31, s16
	v_dual_mov_b32 v1, s16 :: v_dual_mov_b32 v2, s17
	v_dual_mov_b32 v3, s18 :: v_dual_mov_b32 v4, s19
	v_dual_mov_b32 v5, s20 :: v_dual_mov_b32 v6, s21
	v_dual_mov_b32 v7, s22 :: v_dual_mov_b32 v8, s23
	v_dual_mov_b32 v9, s24 :: v_dual_mov_b32 v10, s25
	v_dual_mov_b32 v11, s26 :: v_dual_mov_b32 v12, s27
	v_dual_mov_b32 v13, s28 :: v_dual_mov_b32 v14, s29
	v_dual_mov_b32 v15, s30 :: v_dual_mov_b32 v16, s31
	s_and_saveexec_b32 s3, s2
	s_cbranch_execz .LBB9_10
; %bb.9:
	global_load_b32 v20, v[17:18], off
	v_dual_mov_b32 v1, s16 :: v_dual_mov_b32 v2, s17
	v_dual_mov_b32 v3, s18 :: v_dual_mov_b32 v4, s19
	v_dual_mov_b32 v5, s20 :: v_dual_mov_b32 v6, s21
	v_dual_mov_b32 v7, s22 :: v_dual_mov_b32 v8, s23
	v_dual_mov_b32 v9, s24 :: v_dual_mov_b32 v10, s25
	v_dual_mov_b32 v11, s26 :: v_dual_mov_b32 v12, s27
	v_dual_mov_b32 v13, s28 :: v_dual_mov_b32 v14, s29
	v_dual_mov_b32 v15, s30 :: v_dual_mov_b32 v16, s31
	s_waitcnt vmcnt(0)
	v_mov_b32_e32 v1, v20
.LBB9_10:
	s_or_b32 exec_lo, exec_lo, s3
	v_or_b32_e32 v20, 0x100, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_12
; %bb.11:
	global_load_b32 v2, v[17:18], off offset:1024
.LBB9_12:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x200, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_14
; %bb.13:
	global_load_b32 v3, v[17:18], off offset:2048
.LBB9_14:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x300, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_16
; %bb.15:
	global_load_b32 v4, v[17:18], off offset:3072
.LBB9_16:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x400, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_18
; %bb.17:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v5, v[20:21], off
.LBB9_18:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x500, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_20
; %bb.19:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v6, v[20:21], off offset:1024
.LBB9_20:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x600, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_22
; %bb.21:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v7, v[20:21], off offset:2048
.LBB9_22:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x700, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_24
; %bb.23:
	v_add_co_u32 v20, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v8, v[20:21], off offset:3072
.LBB9_24:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x800, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_26
; %bb.25:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v9, v[20:21], off
.LBB9_26:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x900, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_28
; %bb.27:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v10, v[20:21], off offset:1024
.LBB9_28:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xa00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_30
; %bb.29:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v11, v[20:21], off offset:2048
.LBB9_30:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xb00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_32
; %bb.31:
	v_add_co_u32 v20, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v12, v[20:21], off offset:3072
.LBB9_32:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xc00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_34
; %bb.33:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v13, v[20:21], off
.LBB9_34:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xd00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_36
; %bb.35:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v14, v[20:21], off offset:1024
.LBB9_36:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xe00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_38
; %bb.37:
	v_add_co_u32 v20, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v21, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v15, v[20:21], off offset:2048
.LBB9_38:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0xf00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v20
	s_cbranch_execz .LBB9_40
; %bb.39:
	v_add_co_u32 v16, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v17, vcc_lo, 0, v18, vcc_lo
	global_load_b32 v16, v[16:17], off offset:3072
.LBB9_40:                               ; %_ZN7rocprim25block_load_direct_stripedILj256EN6thrust10device_ptrIiEEiLj16ENS1_16device_referenceIiEEEEvjT0_RAT2__T1_jT3_.exit.i.i
	s_or_b32 exec_lo, exec_lo, s2
	v_and_b32_e32 v17, 28, v19
	s_mov_b64 s[2:3], 0
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 2, v17
.LBB9_41:                               ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v18, v1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v17, v18
	v_add_nc_u32_e32 v17, 0x420, v17
	s_cbranch_scc0 .LBB9_41
; %bb.42:
	v_lshlrev_b32_e32 v17, 1, v0
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_and_b32_e32 v17, 0x1fc, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v17, v0, 6, v17
.LBB9_43:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v18, v17
	v_add_nc_u32_e32 v17, 4, v17
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v18
	s_cbranch_scc0 .LBB9_43
.LBB9_44:                               ; %_ZN7rocprim10block_loadIiLj256ELj16ELNS_17block_load_methodE3ELj1ELj1EE4loadIN6thrust10device_ptrIiEENS4_16device_referenceIiEEEEvT_RA16_ijT0_RNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_load_b64 s[4:5], s[0:1], 0x20
	v_mbcnt_lo_u32_b32 v35, -1, 0
	v_lshrrev_b32_e32 v34, 5, v0
	v_or_b32_e32 v36, 31, v0
	s_cmp_lg_u32 s15, 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc0 .LBB9_71
; %bb.45:
	v_add_nc_u32_e32 v17, v2, v1
	v_and_b32_e32 v18, 15, v35
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add3_u32 v17, v17, v3, v4
	v_cmp_ne_u32_e32 vcc_lo, 0, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v5, v6
	v_add3_u32 v17, v17, v7, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v9, v10
	v_add3_u32 v17, v17, v11, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v13, v14
	v_add3_u32 v17, v17, v15, v16
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:1 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v19, v17
	v_mov_b32_dpp v19, v17 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v18
	v_add_nc_u32_e32 v17, v17, v19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v19, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 7, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v19
	v_mov_b32_dpp v19, v17 row_shr:8 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v18, 0, v19, vcc_lo
	v_bfe_i32 v19, v35, 4, 1
	v_add_nc_u32_e32 v17, v17, v18
	ds_swizzle_b32 v18, v17 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v18, v19, v18
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v18
	v_cmpx_eq_u32_e64 v36, v0
	s_cbranch_execz .LBB9_47
; %bb.46:
	v_lshlrev_b32_e32 v18, 2, v34
	ds_store_b32 v18, v17
.LBB9_47:
	s_or_b32 exec_lo, exec_lo, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s2, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB9_49
; %bb.48:
	ds_load_b32 v18, v33
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v20, v18 row_shr:1 row_mask:0xf bank_mask:0xf
	v_and_b32_e32 v19, 7, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_cmp_ne_u32_e32 vcc_lo, 0, v19
	v_cndmask_b32_e32 v20, 0, v20, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 1, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v20, v18
	v_mov_b32_dpp v20, v18 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e32 v20, 0, v20, vcc_lo
	v_cmp_lt_u32_e32 vcc_lo, 3, v19
	v_add_nc_u32_e32 v18, v18, v20
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v20, v18 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e32 v19, 0, v20, vcc_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v18, v19
	ds_store_b32 v33, v18
.LBB9_49:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s2
	v_cmp_gt_u32_e32 vcc_lo, 32, v0
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
                                        ; implicit-def: $vgpr24
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB9_51
; %bb.50:
	v_lshl_add_u32 v18, v34, 2, -4
	ds_load_b32 v24, v18
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, v24, v17
.LBB9_51:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE19exclusive_scan_implIN6thrust4plusIvEELj256EEENSt9enable_ifIXgtT0_clL_ZNS_16device_warp_sizeEvEEEvE4typeEjiRiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v18, -1, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_i32_e64 s2, 0, v18
	v_cndmask_b32_e64 v18, v18, v35, s2
	v_cmp_eq_u32_e64 s2, 0, v35
	s_delay_alu instid0(VALU_DEP_2)
	v_lshlrev_b32_e32 v18, 2, v18
	ds_bpermute_b32 v25, v18, v17
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB9_70
; %bb.52:
	v_mov_b32_e32 v20, 0
	ds_load_b32 v17, v20 offset:28
	s_and_saveexec_b32 s8, s2
	s_cbranch_execz .LBB9_54
; %bb.53:
	s_add_i32 s10, s15, 32
	s_mov_b32 s11, 0
	v_mov_b32_e32 v18, 1
	s_lshl_b64 s[10:11], s[10:11], 3
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s10, s4, s10
	s_addc_u32 s11, s5, s11
	s_waitcnt lgkmcnt(0)
	global_store_b64 v20, v[17:18], s[10:11]
.LBB9_54:
	s_or_b32 exec_lo, exec_lo, s8
	v_xad_u32 v18, v35, -1, s15
	s_mov_b32 s9, 0
	s_mov_b32 s8, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v19, 32, v18
	v_lshlrev_b64 v[19:20], 3, v[19:20]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v22, vcc_lo, s4, v19
	v_add_co_ci_u32_e32 v23, vcc_lo, s5, v20, vcc_lo
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v19, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_eq_u16_e32 0, v19
	s_cbranch_execz .LBB9_57
.LBB9_55:                               ; %.lr.ph.i.i.i.i.i.i.i.i.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v19, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_cmp_ne_u16_e32 vcc_lo, 0, v19
	s_or_b32 s9, vcc_lo, s9
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB9_55
; %bb.56:                               ; %Flow139
	s_or_b32 exec_lo, exec_lo, s9
.LBB9_57:                               ; %Flow140
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s8
	v_cmp_ne_u32_e32 vcc_lo, 31, v35
	v_lshlrev_b32_e64 v27, v35, -1
	v_add_nc_u32_e32 v28, 1, v35
	v_add_nc_u32_e32 v30, 2, v35
	v_add_nc_u32_e32 v32, 4, v35
	v_add_co_ci_u32_e32 v19, vcc_lo, 0, v35, vcc_lo
	v_add_nc_u32_e32 v39, 8, v35
	v_add_nc_u32_e32 v41, 16, v35
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v26, 2, v19
	ds_bpermute_b32 v22, v26, v20
	v_and_b32_e32 v19, 0xff, v21
	v_cmp_eq_u16_e32 vcc_lo, 2, v19
	v_and_or_b32 v19, v27, vcc_lo, 0x80000000
	v_cmp_gt_u32_e32 vcc_lo, 30, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_ctz_i32_b32_e32 v19, v19
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v28, v19
	s_waitcnt lgkmcnt(0)
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_dual_cndmask_b32 v22, 0, v22 :: v_dual_lshlrev_b32 v23, 1, v23
	v_add_lshl_u32 v29, v23, v35, 2
	v_cmp_gt_u32_e32 vcc_lo, 28, v35
	s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v22, v20
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v30, v19
	ds_bpermute_b32 v22, v29, v20
	v_lshlrev_b32_e32 v23, 2, v23
	v_add_lshl_u32 v31, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_gt_u32_e32 vcc_lo, 24, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v32, v19
	ds_bpermute_b32 v22, v31, v20
	v_lshlrev_b32_e32 v23, 3, v23
	v_add_lshl_u32 v38, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_gt_u32_e32 vcc_lo, 16, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	v_cndmask_b32_e64 v23, 0, 1, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v39, v19
	ds_bpermute_b32 v22, v38, v20
	v_lshlrev_b32_e32 v23, 4, v23
	v_add_lshl_u32 v40, v23, v35, 2
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v22, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v41, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v22
	ds_bpermute_b32 v22, v40, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v19, 0, v22, vcc_lo
	v_dual_mov_b32 v19, 0 :: v_dual_add_nc_u32 v20, v20, v19
.LBB9_58:                               ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB9_61 Depth 2
	v_and_b32_e32 v21, 0xff, v21
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_mov_b32_e32 v37, v20
	v_cmp_ne_u16_e32 vcc_lo, 2, v21
	v_cndmask_b32_e64 v21, 0, 1, vcc_lo
	;;#ASMSTART
	;;#ASMEND
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_ne_u32_e32 vcc_lo, 0, v21
	s_cmp_lg_u32 vcc_lo, exec_lo
	s_cbranch_scc1 .LBB9_64
; %bb.59:                               ;   in Loop: Header=BB9_58 Depth=1
	v_lshlrev_b64 v[20:21], 3, v[18:19]
	s_mov_b32 s8, exec_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v22, vcc_lo, s4, v20
	v_add_co_ci_u32_e32 v23, vcc_lo, s5, v21, vcc_lo
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v42, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_eq_u16_e32 0, v42
	s_cbranch_execz .LBB9_63
; %bb.60:                               ; %.lr.ph.i.i24.i.i.i.i.i.i.i.preheader
                                        ;   in Loop: Header=BB9_58 Depth=1
	s_mov_b32 s9, 0
.LBB9_61:                               ; %.lr.ph.i.i24.i.i.i.i.i.i.i
                                        ;   Parent Loop BB9_58 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	global_load_b64 v[20:21], v[22:23], off glc
	s_waitcnt vmcnt(0)
	v_and_b32_e32 v42, 0xff, v21
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_cmp_ne_u16_e32 vcc_lo, 0, v42
	s_or_b32 s9, vcc_lo, s9
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB9_61
; %bb.62:                               ; %Flow135
                                        ;   in Loop: Header=BB9_58 Depth=1
	s_or_b32 exec_lo, exec_lo, s9
.LBB9_63:                               ; %Flow136
                                        ;   in Loop: Header=BB9_58 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	s_or_b32 exec_lo, exec_lo, s8
	ds_bpermute_b32 v23, v26, v20
	v_and_b32_e32 v22, 0xff, v21
	v_subrev_nc_u32_e32 v18, 32, v18
	s_mov_b32 s8, 0
	v_cmp_eq_u16_e32 vcc_lo, 2, v22
	v_and_or_b32 v22, v27, vcc_lo, 0x80000000
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ctz_i32_b32_e32 v22, v22
	v_cmp_le_u32_e32 vcc_lo, v28, v22
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v30, v22
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v20, v23, v20
	ds_bpermute_b32 v23, v29, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v32, v22
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v31, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v39, v22
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v38, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v23, 0, v23, vcc_lo
	v_cmp_le_u32_e32 vcc_lo, v41, v22
	v_add_nc_u32_e32 v20, v20, v23
	ds_bpermute_b32 v23, v40, v20
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e32 v22, 0, v23, vcc_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_add3_u32 v20, v22, v37, v20
	s_branch .LBB9_65
.LBB9_64:                               ;   in Loop: Header=BB9_58 Depth=1
	s_mov_b32 s8, -1
                                        ; implicit-def: $vgpr20
                                        ; implicit-def: $vgpr21
.LBB9_65:                               ; %Flow137
                                        ;   in Loop: Header=BB9_58 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_b32 vcc_lo, exec_lo, s8
	s_cbranch_vccz .LBB9_58
; %bb.66:                               ; %_ZN7rocprim6detail23lookback_scan_prefix_opIiN6thrust4plusIvEENS0_19lookback_scan_stateIiLb0ELb1EEELNS0_25lookback_scan_determinismE0EE10get_prefixEv.exit.i.i.i.i.i.i
	s_and_saveexec_b32 s8, s2
	s_cbranch_execz .LBB9_68
; %bb.67:
	s_add_i32 s10, s15, 32
	s_mov_b32 s11, 0
	v_dual_mov_b32 v19, 0 :: v_dual_mov_b32 v18, 2
	s_lshl_b64 s[10:11], s[10:11], 3
	v_add_nc_u32_e32 v17, v37, v17
	s_add_u32 s10, s4, s10
	s_addc_u32 s11, s5, s11
	global_store_b64 v19, v[17:18], s[10:11]
.LBB9_68:                               ; %_ZN7rocprim6detail23lookback_scan_prefix_opIiN6thrust4plusIvEENS0_19lookback_scan_stateIiLb0ELb1EEELNS0_25lookback_scan_determinismE0EEclEi.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s8
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB9_70
; %bb.69:
	v_mov_b32_e32 v17, 0
	ds_store_b32 v17, v37 offset:28
.LBB9_70:                               ; %Flow141
	s_or_b32 exec_lo, exec_lo, s3
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e64 v18, v25, v24, s2
	v_cmp_ne_u32_e32 vcc_lo, 0, v0
	v_mov_b32_e32 v17, 0
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	v_cndmask_b32_e32 v18, 0, v18, vcc_lo
	ds_load_b32 v17, v17 offset:28
	s_mov_b32 s2, 0
	s_waitcnt lgkmcnt(0)
	v_add3_u32 v17, v18, v1, v17
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v17, v2
	v_add_nc_u32_e32 v19, v18, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v19, v4
	v_add_nc_u32_e32 v21, v20, v5
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v21, v6
	v_add_nc_u32_e32 v23, v22, v7
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v24, v23, v8
	v_add_nc_u32_e32 v25, v24, v9
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v26, v25, v10
	v_add_nc_u32_e32 v27, v26, v11
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v28, v27, v12
	v_add_nc_u32_e32 v29, v28, v13
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v30, v29, v14
	v_add_nc_u32_e32 v31, v30, v15
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v32, v31, v16
	s_branch .LBB9_72
.LBB9_71:
	s_mov_b32 s2, -1
                                        ; implicit-def: $vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31_vgpr32
.LBB9_72:                               ; %Flow144
	s_load_b128 s[8:11], s[0:1], 0x30
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB9_84
; %bb.73:
	s_load_b32 s2, s[0:1], 0x40
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_waitcnt lgkmcnt(0)
	s_bitcmp1_b32 s2, 0
	s_cselect_b32 s2, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s3, vcc_lo, s2
	s_and_saveexec_b32 s2, s3
	s_cbranch_execz .LBB9_75
; %bb.74:
	s_load_b32 s3, s[8:9], 0x0
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v1, s3, v1
.LBB9_75:
	s_or_b32 exec_lo, exec_lo, s2
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v17, v2, v1
	v_and_b32_e32 v18, 15, v35
	s_mov_b32 s3, exec_lo
	v_add3_u32 v17, v17, v3, v4
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_cmp_ne_u32_e64 s2, 0, v18
	v_add3_u32 v17, v17, v5, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v7, v8
	v_add3_u32 v17, v17, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v11, v12
	v_add3_u32 v17, v17, v13, v14
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v17, v17, v15, v16
	v_mov_b32_dpp v19, v17 row_shr:1 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v19, 0, v19, s2
	v_cmp_lt_u32_e64 s2, 1, v18
	v_add_nc_u32_e32 v17, v17, v19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:2 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v19, 0, v19, s2
	v_cmp_lt_u32_e64 s2, 3, v18
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v19
	v_mov_b32_dpp v19, v17 row_shr:4 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v19, 0, v19, s2
	v_cmp_lt_u32_e64 s2, 7, v18
	v_add_nc_u32_e32 v17, v17, v19
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v19, v17 row_shr:8 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v18, 0, v19, s2
	v_bfe_i32 v19, v35, 4, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v18
	ds_swizzle_b32 v18, v17 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v18, v19, v18
	v_add_nc_u32_e32 v17, v17, v18
	v_cmpx_eq_u32_e64 v36, v0
	s_cbranch_execz .LBB9_77
; %bb.76:
	v_lshlrev_b32_e32 v18, 2, v34
	ds_store_b32 v18, v17
.LBB9_77:
	s_or_b32 exec_lo, exec_lo, s3
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB9_79
; %bb.78:
	ds_load_b32 v18, v33
	v_and_b32_e32 v19, 7, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e64 s2, 0, v19
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v20, v18 row_shr:1 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v20, 0, v20, s2
	v_cmp_lt_u32_e64 s2, 1, v19
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v20, v18
	v_mov_b32_dpp v20, v18 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v20, 0, v20, s2
	v_cmp_lt_u32_e64 s2, 3, v19
	v_add_nc_u32_e32 v18, v18, v20
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v20, v18 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v19, 0, v20, s2
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v18, v18, v19
	ds_store_b32 v33, v18
.LBB9_79:                               ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s3
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s3, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
                                        ; implicit-def: $vgpr18
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB9_81
; %bb.80:
	v_lshl_add_u32 v18, v34, 2, -4
	ds_load_b32 v18, v18
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v17, v18, v17
.LBB9_81:                               ; %_ZN7rocprim6detail19lookback_block_scanILb0ENS_10block_scanIiLj256ELNS_20block_scan_algorithmE0ELj1ELj1EEEiLj16EN6thrust4plusIvEEEENSt9enable_ifIXntT_EvE4typeERAT2__T1_SB_RSB_RNT0_12storage_typeET3_.exit.i
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v19, -1, v35
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_i32_e64 s2, 0, v19
	v_cndmask_b32_e64 v19, v19, v35, s2
	v_cmp_eq_u32_e64 s2, 0, v35
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v19, 2, v19
	ds_bpermute_b32 v17, v19, v17
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e64 v17, v17, v18, s2
	v_cndmask_b32_e64 v17, v17, 0, vcc_lo
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v17, v17, v1
	v_add_nc_u32_e32 v18, v17, v2
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v19, v18, v3
	v_add_nc_u32_e32 v20, v19, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v21, v20, v5
	v_add_nc_u32_e32 v22, v21, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v23, v22, v7
	v_add_nc_u32_e32 v24, v23, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v25, v24, v9
	v_add_nc_u32_e32 v26, v25, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v27, v26, v11
	v_add_nc_u32_e32 v28, v27, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v29, v28, v13
	v_add_nc_u32_e32 v30, v29, v14
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v31, v30, v15
	v_add_nc_u32_e32 v32, v31, v16
	s_and_saveexec_b32 s2, vcc_lo
	s_cbranch_execz .LBB9_83
; %bb.82:
	v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v2, 2
	ds_load_b32 v1, v3 offset:28
	s_waitcnt lgkmcnt(0)
	global_store_b64 v3, v[1:2], s[4:5] offset:256
.LBB9_83:                               ; %Flow142
	s_or_b32 exec_lo, exec_lo, s2
.LBB9_84:
	v_lshlrev_b32_e32 v1, 1, v0
	s_and_not1_b32 vcc_lo, exec_lo, s34
	s_mov_b32 s2, -1
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	v_and_b32_e32 v1, 0x1fc, v1
	buffer_gl0_inv
	v_lshl_add_u32 v35, v0, 6, v1
	s_cbranch_vccnz .LBB9_90
; %bb.85:                               ; %.preheader31.preheader
	s_delay_alu instid0(VALU_DEP_1)
	v_mov_b32_e32 v1, v35
	s_mov_b64 s[2:3], 0
.LBB9_86:                               ; %.preheader31
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	v_movrels_b32_e32 v2, v17
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v1, v2
	v_add_nc_u32_e32 v1, 4, v1
	s_cbranch_scc0 .LBB9_86
; %bb.87:
	v_dual_mov_b32 v1, v17 :: v_dual_mov_b32 v2, v18
	v_dual_mov_b32 v3, v19 :: v_dual_mov_b32 v4, v20
	v_dual_mov_b32 v5, v21 :: v_dual_mov_b32 v6, v22
	v_dual_mov_b32 v7, v23 :: v_dual_mov_b32 v8, v24
	v_dual_mov_b32 v9, v25 :: v_dual_mov_b32 v10, v26
	v_dual_mov_b32 v11, v27 :: v_dual_mov_b32 v12, v28
	v_dual_mov_b32 v13, v29 :: v_dual_mov_b32 v14, v30
	v_dual_mov_b32 v15, v31 :: v_dual_mov_b32 v16, v32
	v_add_lshl_u32 v36, v0, v34, 2
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
.LBB9_88:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v37, v36
	v_add_nc_u32_e32 v36, 0x420, v36
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v37
	s_cbranch_scc1 .LBB9_88
; %bb.89:                               ; %_ZN7rocprim11block_storeIiLj256ELj16ELNS_18block_store_methodE3ELj1ELj1EE5storeIN6thrust10device_ptrIiEEEEvT_RA16_iRNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_add_u32 s4, s6, s12
	s_addc_u32 s5, s7, s13
	v_add_co_u32 v40, s2, s4, v33
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v41, null, s5, 0, s2
	s_clause 0x2
	global_store_b32 v33, v2, s[4:5] offset:1024
	global_store_b32 v33, v3, s[4:5] offset:2048
	global_store_b32 v33, v4, s[4:5] offset:3072
	v_add_co_u32 v36, vcc_lo, v40, 0x2000
	v_add_co_ci_u32_e32 v37, vcc_lo, 0, v41, vcc_lo
	v_add_co_u32 v2, vcc_lo, 0x3000, v40
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v41, vcc_lo
	v_add_co_u32 v38, vcc_lo, 0x1000, v40
	v_add_co_ci_u32_e32 v39, vcc_lo, 0, v41, vcc_lo
	s_mov_b32 s2, 0
	v_add_co_u32 v4, vcc_lo, 0x2000, v40
	s_clause 0x1
	global_store_b32 v[2:3], v15, off offset:2048
	global_store_b32 v[36:37], v5, off offset:-4096
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v41, vcc_lo
	s_clause 0xa
	global_store_b32 v33, v1, s[4:5]
	global_store_b32 v[36:37], v9, off
	global_store_b32 v[38:39], v6, off offset:1024
	global_store_b32 v[38:39], v7, off offset:2048
	global_store_b32 v[38:39], v8, off offset:3072
	global_store_b32 v[4:5], v10, off offset:1024
	global_store_b32 v[4:5], v11, off offset:2048
	global_store_b32 v[4:5], v12, off offset:3072
	global_store_b32 v[2:3], v13, off
	global_store_b32 v[2:3], v14, off offset:1024
	global_store_b32 v[2:3], v16, off offset:3072
.LBB9_90:                               ; %Flow131
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB9_133
; %bb.91:                               ; %.preheader.preheader
	s_mov_b64 s[2:3], 0
.LBB9_92:                               ; %.preheader
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	v_movrels_b32_e32 v1, v17
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	ds_store_b32 v35, v1
	v_add_nc_u32_e32 v35, 4, v35
	s_cbranch_scc0 .LBB9_92
; %bb.93:
	v_add_lshl_u32 v1, v0, v34, 2
	s_mov_b64 s[2:3], 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB9_94:                               ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v2, v1
	v_add_nc_u32_e32 v1, 0x420, v1
	s_mov_b32 m0, s2
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_lg_u32 s2, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v17, v2
	s_cbranch_scc1 .LBB9_94
; %bb.95:                               ; %_ZN7rocprim14block_exchangeIiLj256ELj16ELj1ELj1EE18blocked_to_stripedIiEEvRA16_KiRA16_T_RNS1_13storage_type_E.exit.i.i
	s_add_u32 s2, s6, s12
	s_addc_u32 s3, s7, s13
	v_add_co_u32 v2, s2, s2, v33
	v_mov_b32_e32 v1, 0
	v_add_co_ci_u32_e64 v3, null, s3, 0, s2
	s_mov_b32 s2, exec_lo
	v_cmpx_gt_u32_e64 s14, v0
	s_cbranch_execz .LBB9_97
; %bb.96:
	global_store_b32 v[2:3], v17, off
.LBB9_97:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x100, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_99
; %bb.98:
	global_store_b32 v[2:3], v18, off offset:1024
.LBB9_99:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x200, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_101
; %bb.100:
	global_store_b32 v[2:3], v19, off offset:2048
.LBB9_101:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x300, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_103
; %bb.102:
	global_store_b32 v[2:3], v20, off offset:3072
.LBB9_103:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x400, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_105
; %bb.104:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v21, off
.LBB9_105:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x500, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_107
; %bb.106:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v22, off offset:1024
.LBB9_107:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x600, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_109
; %bb.108:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v23, off offset:2048
.LBB9_109:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x700, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_111
; %bb.110:
	v_add_co_u32 v4, vcc_lo, 0x1000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v24, off offset:3072
.LBB9_111:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x800, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_113
; %bb.112:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v25, off
.LBB9_113:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0x900, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_115
; %bb.114:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v26, off offset:1024
.LBB9_115:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xa00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_117
; %bb.116:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v27, off offset:2048
.LBB9_117:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xb00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_119
; %bb.118:
	v_add_co_u32 v4, vcc_lo, 0x2000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v28, off offset:3072
.LBB9_119:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xc00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_121
; %bb.120:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v29, off
.LBB9_121:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xd00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_123
; %bb.122:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v30, off offset:1024
.LBB9_123:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xe00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_125
; %bb.124:
	v_add_co_u32 v4, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v5, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[4:5], v31, off offset:2048
.LBB9_125:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v4, 0xf00, v0
	s_mov_b32 s2, exec_lo
	s_delay_alu instid0(VALU_DEP_1)
	v_cmpx_gt_u32_e64 s14, v4
	s_cbranch_execz .LBB9_127
; %bb.126:
	v_add_co_u32 v2, vcc_lo, 0x3000, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v3, vcc_lo
	global_store_b32 v[2:3], v32, off offset:3072
.LBB9_127:                              ; %_ZN7rocprim11block_storeIiLj256ELj16ELNS_18block_store_methodE3ELj1ELj1EE5storeIN6thrust10device_ptrIiEEEEvT_RA16_ijRNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	s_or_b32 exec_lo, exec_lo, s2
	s_load_b32 s0, s[0:1], 0x40
	s_waitcnt lgkmcnt(0)
	s_bfe_u32 s0, s0, 0x10008
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_eq_u32 s0, 0
	s_cbranch_scc1 .LBB9_133
; %bb.128:
	s_add_u32 s0, s14, -1
	s_addc_u32 s1, s33, -1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshr_b64 s[2:3], s[0:1], 4
	s_mov_b32 s1, exec_lo
	v_cmpx_eq_u64_e64 s[2:3], v[0:1]
	s_cbranch_execz .LBB9_133
; %bb.129:                              ; %.preheader.i
	s_and_b32 s0, s0, 15
	v_mov_b32_e32 v1, 0
	s_mov_b32 m0, s0
	s_mov_b32 s1, 0
	v_movrels_b32_e32 v0, v17
	s_mov_b64 s[2:3], 0
.LBB9_130:                              ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_cmp_lg_u64 s[0:1], s[2:3]
	s_cbranch_scc1 .LBB9_132
; %bb.131:                              ;   in Loop: Header=BB9_130 Depth=1
	global_store_b32 v1, v0, s[10:11]
.LBB9_132:                              ;   in Loop: Header=BB9_130 Depth=1
	s_add_u32 s2, s2, 1
	s_addc_u32 s3, s3, 0
	s_cmp_eq_u32 s2, 16
	s_cbranch_scc0 .LBB9_130
.LBB9_133:                              ; %_ZN7rocprim6detail25lookback_scan_kernel_implILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiNS0_19lookback_scan_stateIiLb0ELb1EEEEENSt9enable_ifIXcl27is_lookback_kernel_runnableIT6_EEEvE4typeET2_T3_mT5_T4_SE_jPSJ_SL_bb.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
		.amdhsa_group_segment_fixed_size 16896
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 68
		.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 43
		.amdhsa_next_free_sgpr 35
		.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._ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,"axG",@progbits,_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb,comdat
.Lfunc_end9:
	.size	_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb, .Lfunc_end9-_ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 5716
; NumSgprs: 37
; NumVgprs: 43
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 16896 bytes/workgroup (compile time only)
; SGPRBlocks: 4
; VGPRBlocks: 5
; NumSGPRsForWavesPerEU: 37
; NumVGPRsForWavesPerEU: 43
; Occupancy: 14
; 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
	.section	.text._ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
	.protected	_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_ ; -- Begin function _ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.globl	_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
	.p2align	8
	.type	_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,@function
_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_: ; @_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
; %bb.0:
	s_load_b128 s[20:23], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_load_b32 s4, s[20:21], 0x0
	v_cmp_gt_u32_e32 vcc_lo, s22, v0
	s_waitcnt lgkmcnt(0)
	s_mov_b32 s5, s4
	s_mov_b32 s6, s4
	s_mov_b32 s7, s4
	s_mov_b32 s8, s4
	s_mov_b32 s9, s4
	s_mov_b32 s10, s4
	s_mov_b32 s11, s4
	s_mov_b32 s12, s4
	s_mov_b32 s13, s4
	s_mov_b32 s14, s4
	s_mov_b32 s15, s4
	s_mov_b32 s16, s4
	s_mov_b32 s17, s4
	s_mov_b32 s18, s4
	s_mov_b32 s19, s4
	v_lshlrev_b32_e32 v19, 2, v0
	v_dual_mov_b32 v1, s4 :: v_dual_mov_b32 v4, s7
	v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v3, s6
	v_mov_b32_e32 v6, s9
	s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_u32 v17, s2, s20, v19
	v_add_co_ci_u32_e64 v18, null, s21, 0, s2
	v_dual_mov_b32 v5, s8 :: v_dual_mov_b32 v8, s11
	v_dual_mov_b32 v7, s10 :: v_dual_mov_b32 v10, s13
	v_dual_mov_b32 v9, s12 :: v_dual_mov_b32 v12, s15
	v_dual_mov_b32 v11, s14 :: v_dual_mov_b32 v14, s17
	v_dual_mov_b32 v13, s16 :: v_dual_mov_b32 v16, s19
	v_mov_b32_e32 v15, s18
	s_and_saveexec_b32 s2, vcc_lo
	s_cbranch_execz .LBB10_2
; %bb.1:
	global_load_b32 v20, v[17:18], off
	v_dual_mov_b32 v1, s4 :: v_dual_mov_b32 v2, s5
	v_dual_mov_b32 v3, s6 :: v_dual_mov_b32 v4, s7
	v_dual_mov_b32 v5, s8 :: v_dual_mov_b32 v6, s9
	v_dual_mov_b32 v7, s10 :: v_dual_mov_b32 v8, s11
	v_dual_mov_b32 v9, s12 :: v_dual_mov_b32 v10, s13
	v_dual_mov_b32 v11, s14 :: v_dual_mov_b32 v12, s15
	v_dual_mov_b32 v13, s16 :: v_dual_mov_b32 v14, s17
	v_dual_mov_b32 v15, s18 :: v_dual_mov_b32 v16, s19
	s_waitcnt vmcnt(0)
	v_mov_b32_e32 v1, v20
.LBB10_2:
	s_or_b32 exec_lo, exec_lo, s2
	v_or_b32_e32 v20, 0x100, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s2, s22, v20
	s_and_saveexec_b32 s3, s2
	s_cbranch_execz .LBB10_4
; %bb.3:
	global_load_b32 v2, v[17:18], off offset:1024
.LBB10_4:
	s_or_b32 exec_lo, exec_lo, s3
	v_or_b32_e32 v20, 0x200, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s3, s22, v20
	s_and_saveexec_b32 s4, s3
	s_cbranch_execz .LBB10_6
; %bb.5:
	global_load_b32 v3, v[17:18], off offset:2048
.LBB10_6:
	s_or_b32 exec_lo, exec_lo, s4
	v_or_b32_e32 v20, 0x300, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s4, s22, v20
	s_and_saveexec_b32 s5, s4
	s_cbranch_execz .LBB10_8
; %bb.7:
	global_load_b32 v4, v[17:18], off offset:3072
.LBB10_8:
	s_or_b32 exec_lo, exec_lo, s5
	v_or_b32_e32 v20, 0x400, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s5, s22, v20
	s_and_saveexec_b32 s7, s5
	s_cbranch_execz .LBB10_10
; %bb.9:
	v_add_co_u32 v20, s6, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s6, 0, v18, s6
	global_load_b32 v5, v[20:21], off
.LBB10_10:
	s_or_b32 exec_lo, exec_lo, s7
	v_or_b32_e32 v20, 0x500, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s6, s22, v20
	s_and_saveexec_b32 s8, s6
	s_cbranch_execz .LBB10_12
; %bb.11:
	v_add_co_u32 v20, s7, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s7, 0, v18, s7
	global_load_b32 v6, v[20:21], off offset:1024
.LBB10_12:
	s_or_b32 exec_lo, exec_lo, s8
	v_or_b32_e32 v20, 0x600, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s7, s22, v20
	s_and_saveexec_b32 s9, s7
	s_cbranch_execz .LBB10_14
; %bb.13:
	v_add_co_u32 v20, s8, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s8, 0, v18, s8
	global_load_b32 v7, v[20:21], off offset:2048
.LBB10_14:
	s_or_b32 exec_lo, exec_lo, s9
	v_or_b32_e32 v20, 0x700, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s8, s22, v20
	s_and_saveexec_b32 s10, s8
	s_cbranch_execz .LBB10_16
; %bb.15:
	v_add_co_u32 v20, s9, 0x1000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s9, 0, v18, s9
	global_load_b32 v8, v[20:21], off offset:3072
.LBB10_16:
	s_or_b32 exec_lo, exec_lo, s10
	v_or_b32_e32 v20, 0x800, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s9, s22, v20
	s_and_saveexec_b32 s11, s9
	s_cbranch_execz .LBB10_18
; %bb.17:
	v_add_co_u32 v20, s10, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s10, 0, v18, s10
	global_load_b32 v9, v[20:21], off
.LBB10_18:
	s_or_b32 exec_lo, exec_lo, s11
	v_or_b32_e32 v20, 0x900, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s10, s22, v20
	s_and_saveexec_b32 s12, s10
	s_cbranch_execz .LBB10_20
; %bb.19:
	v_add_co_u32 v20, s11, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s11, 0, v18, s11
	global_load_b32 v10, v[20:21], off offset:1024
.LBB10_20:
	s_or_b32 exec_lo, exec_lo, s12
	v_or_b32_e32 v20, 0xa00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s11, s22, v20
	s_and_saveexec_b32 s13, s11
	s_cbranch_execz .LBB10_22
; %bb.21:
	v_add_co_u32 v20, s12, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s12, 0, v18, s12
	global_load_b32 v11, v[20:21], off offset:2048
.LBB10_22:
	s_or_b32 exec_lo, exec_lo, s13
	v_or_b32_e32 v20, 0xb00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s12, s22, v20
	s_and_saveexec_b32 s14, s12
	s_cbranch_execz .LBB10_24
; %bb.23:
	v_add_co_u32 v20, s13, 0x2000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s13, 0, v18, s13
	global_load_b32 v12, v[20:21], off offset:3072
.LBB10_24:
	s_or_b32 exec_lo, exec_lo, s14
	v_or_b32_e32 v20, 0xc00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s13, s22, v20
	s_and_saveexec_b32 s15, s13
	s_cbranch_execz .LBB10_26
; %bb.25:
	v_add_co_u32 v20, s14, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s14, 0, v18, s14
	global_load_b32 v13, v[20:21], off
.LBB10_26:
	s_or_b32 exec_lo, exec_lo, s15
	v_or_b32_e32 v20, 0xd00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s14, s22, v20
	s_and_saveexec_b32 s16, s14
	s_cbranch_execz .LBB10_28
; %bb.27:
	v_add_co_u32 v20, s15, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s15, 0, v18, s15
	global_load_b32 v14, v[20:21], off offset:1024
.LBB10_28:
	s_or_b32 exec_lo, exec_lo, s16
	v_or_b32_e32 v20, 0xe00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s15, s22, v20
	s_and_saveexec_b32 s17, s15
	s_cbranch_execz .LBB10_30
; %bb.29:
	v_add_co_u32 v20, s16, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v21, s16, 0, v18, s16
	global_load_b32 v15, v[20:21], off offset:2048
.LBB10_30:
	s_or_b32 exec_lo, exec_lo, s17
	v_or_b32_e32 v20, 0xf00, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_gt_u32_e64 s16, s22, v20
	s_and_saveexec_b32 s18, s16
	s_cbranch_execz .LBB10_32
; %bb.31:
	v_add_co_u32 v16, s17, 0x3000, v17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v17, s17, 0, v18, s17
	global_load_b32 v16, v[16:17], off offset:3072
.LBB10_32:                              ; %_ZN7rocprim25block_load_direct_stripedILj256EN6thrust10device_ptrIiEEiLj16ENS1_16device_referenceIiEEEEvjT0_RAT2__T1_jT3_.exit.i.i
	s_or_b32 exec_lo, exec_lo, s18
	v_lshrrev_b32_e32 v17, 5, v0
	s_mov_b64 s[18:19], 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b32_e32 v20, 2, v17
	v_lshl_add_u32 v18, v0, 2, v20
.LBB10_33:                              ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_waitcnt vmcnt(0)
	v_movrels_b32_e32 v21, v1
	s_addc_u32 s19, s19, 0
	s_cmp_eq_u32 s18, 16
	ds_store_b32 v18, v21
	v_add_nc_u32_e32 v18, 0x420, v18
	s_cbranch_scc0 .LBB10_33
; %bb.34:
	v_lshrrev_b32_e32 v18, 1, v0
	s_mov_b64 s[18:19], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_lshlrev_b32_e32 v21, 2, v18
	s_delay_alu instid0(VALU_DEP_1)
	v_lshl_add_u32 v21, v0, 6, v21
.LBB10_35:                              ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v22, v21
	v_add_nc_u32_e32 v21, 4, v21
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_addc_u32 s19, s19, 0
	s_cmp_lg_u32 s18, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v22
	s_cbranch_scc1 .LBB10_35
; %bb.36:                               ; %_ZN7rocprim10block_loadIiLj256ELj16ELNS_17block_load_methodE3ELj1ELj1EE4loadIN6thrust10device_ptrIiEENS4_16device_referenceIiEEEEvT_RA16_ijT0_RNS_14block_exchangeIiLj256ELj16ELj1ELj1EE13storage_type_E.exit.i
	v_add_nc_u32_e32 v21, v2, v1
	s_mov_b32 s18, exec_lo
	s_barrier
	buffer_gl0_inv
	v_add3_u32 v21, v21, v3, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v21, v21, v5, v6
	v_add3_u32 v21, v21, v7, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add3_u32 v21, v21, v9, v10
	v_add3_u32 v21, v21, v11, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_add3_u32 v22, v21, v13, v14
	v_mbcnt_lo_u32_b32 v21, -1, 0
	v_add3_u32 v22, v22, v15, v16
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_and_b32_e32 v23, 15, v21
	v_mov_b32_dpp v24, v22 row_shr:1 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e64 s17, 0, v23
	v_cndmask_b32_e64 v24, 0, v24, s17
	v_cmp_lt_u32_e64 s17, 1, v23
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v24, v22
	v_mov_b32_dpp v24, v22 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v24, 0, v24, s17
	v_cmp_lt_u32_e64 s17, 3, v23
	v_add_nc_u32_e32 v22, v22, v24
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v24, v22 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v24, 0, v24, s17
	v_cmp_lt_u32_e64 s17, 7, v23
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v22, v22, v24
	v_mov_b32_dpp v24, v22 row_shr:8 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v23, 0, v24, s17
	v_bfe_i32 v24, v21, 4, 1
	v_add_nc_u32_e32 v22, v22, v23
	ds_swizzle_b32 v23, v22 offset:swizzle(BROADCAST,32,15)
	s_waitcnt lgkmcnt(0)
	v_and_b32_e32 v23, v24, v23
	v_or_b32_e32 v24, 31, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v22, v22, v23
	v_cmpx_eq_u32_e64 v24, v0
	s_cbranch_execz .LBB10_38
; %bb.37:
	ds_store_b32 v20, v22
.LBB10_38:
	s_or_b32 exec_lo, exec_lo, s18
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s18, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_gt_u32_e32 8, v0
	s_cbranch_execz .LBB10_40
; %bb.39:
	ds_load_b32 v20, v19
	v_and_b32_e32 v23, 7, v21
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_cmp_ne_u32_e64 s17, 0, v23
	s_waitcnt lgkmcnt(0)
	v_mov_b32_dpp v24, v20 row_shr:1 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v24, 0, v24, s17
	v_cmp_lt_u32_e64 s17, 1, v23
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v24, v20
	v_mov_b32_dpp v24, v20 row_shr:2 row_mask:0xf bank_mask:0xf
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v24, 0, v24, s17
	v_cmp_lt_u32_e64 s17, 3, v23
	v_add_nc_u32_e32 v20, v20, v24
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_mov_b32_dpp v24, v20 row_shr:4 row_mask:0xf bank_mask:0xf
	v_cndmask_b32_e64 v23, 0, v24, s17
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v20, v20, v23
	ds_store_b32 v19, v20
.LBB10_40:                              ; %_ZN7rocprim6detail20block_scan_warp_scanIiLj256ELj1ELj1EE23calculate_warp_prefixesIN6thrust4plusIvEELj256EEEvjjiRNS0_11raw_storageINS2_13storage_type_EEET_.exit.i.i.i.i.i
	s_or_b32 exec_lo, exec_lo, s18
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s18, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
                                        ; implicit-def: $vgpr20
	v_cmpx_lt_u32_e32 31, v0
	s_cbranch_execz .LBB10_42
; %bb.41:
	v_lshl_add_u32 v20, v17, 2, -4
	ds_load_b32 v20, v20
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v22, v20, v22
.LBB10_42:                              ; %_ZN7rocprim6detail22single_scan_block_scanILb0ENS_10block_scanIiLj256ELNS_20block_scan_algorithmE0ELj1ELj1EEEiLj16EN6thrust4plusIvEEEENSt9enable_ifIXntT_EvE4typeERAT2__T1_SD_SB_RNT0_12storage_typeET3_.exit.i
	s_or_b32 exec_lo, exec_lo, s18
	v_add_nc_u32_e32 v23, -1, v21
	s_mov_b64 s[18:19], 0
	s_barrier
	buffer_gl0_inv
	v_cmp_gt_i32_e64 s17, 0, v23
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_cndmask_b32_e64 v23, v23, v21, s17
	v_cmp_eq_u32_e64 s17, 0, v21
	v_lshlrev_b32_e32 v23, 2, v23
	ds_bpermute_b32 v22, v23, v22
	s_waitcnt lgkmcnt(0)
	v_cndmask_b32_e64 v20, v22, v20, s17
	v_cmp_ne_u32_e64 s17, 0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cndmask_b32_e64 v20, 0, v20, s17
	v_add_nc_u32_e32 v1, v20, v1
	v_lshlrev_b32_e32 v20, 4, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_nc_u32_e32 v2, v1, v2
	v_add_lshl_u32 v18, v18, v20, 2
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v3, v2, v3
	v_add_nc_u32_e32 v4, v3, v4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v5, v4, v5
	v_add_nc_u32_e32 v6, v5, v6
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v7, v6, v7
	v_add_nc_u32_e32 v8, v7, v8
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v9, v8, v9
	v_add_nc_u32_e32 v10, v9, v10
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v11, v10, v11
	v_add_nc_u32_e32 v12, v11, v12
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v13, v12, v13
	v_add_nc_u32_e32 v14, v13, v14
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_nc_u32_e32 v15, v14, v15
	v_add_nc_u32_e32 v16, v15, v16
.LBB10_43:                              ; =>This Inner Loop Header: Depth=1
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	v_movrels_b32_e32 v20, v1
	s_addc_u32 s19, s19, 0
	s_cmp_eq_u32 s18, 16
	ds_store_b32 v18, v20
	v_add_nc_u32_e32 v18, 4, v18
	s_cbranch_scc0 .LBB10_43
; %bb.44:
	v_add_lshl_u32 v0, v0, v17, 2
	s_mov_b64 s[18:19], 0
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
.LBB10_45:                              ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v17, v0
	v_add_nc_u32_e32 v0, 0x420, v0
	s_mov_b32 m0, s18
	s_add_u32 s18, s18, 1
	s_addc_u32 s19, s19, 0
	s_cmp_lg_u32 s18, 16
	s_waitcnt lgkmcnt(0)
	v_movreld_b32_e32 v1, v17
	s_cbranch_scc1 .LBB10_45
; %bb.46:                               ; %_ZN7rocprim14block_exchangeIiLj256ELj16ELj1ELj1EE18blocked_to_stripedIiEEvRA16_KiRA16_T_RNS1_13storage_type_E.exit.i.i
	s_load_b64 s[0:1], s[0:1], 0x18
	s_waitcnt lgkmcnt(0)
	v_add_co_u32 v17, s0, s0, v19
	s_delay_alu instid0(VALU_DEP_1)
	v_add_co_ci_u32_e64 v18, null, s1, 0, s0
	s_and_saveexec_b32 s0, vcc_lo
	s_cbranch_execz .LBB10_48
; %bb.47:
	global_store_b32 v[17:18], v1, off
.LBB10_48:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s2
	s_cbranch_execz .LBB10_50
; %bb.49:
	global_store_b32 v[17:18], v2, off offset:1024
.LBB10_50:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s3
	s_cbranch_execz .LBB10_52
; %bb.51:
	global_store_b32 v[17:18], v3, off offset:2048
.LBB10_52:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s4
	s_cbranch_execz .LBB10_54
; %bb.53:
	global_store_b32 v[17:18], v4, off offset:3072
.LBB10_54:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s5
	s_cbranch_execz .LBB10_56
; %bb.55:
	v_add_co_u32 v0, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v5, off
.LBB10_56:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s6
	s_cbranch_execz .LBB10_58
; %bb.57:
	v_add_co_u32 v0, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v6, off offset:1024
.LBB10_58:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s7
	s_cbranch_execz .LBB10_60
; %bb.59:
	v_add_co_u32 v0, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v7, off offset:2048
.LBB10_60:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s8
	s_cbranch_execz .LBB10_62
; %bb.61:
	v_add_co_u32 v0, vcc_lo, 0x1000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v8, off offset:3072
.LBB10_62:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s9
	s_cbranch_execz .LBB10_64
; %bb.63:
	v_add_co_u32 v0, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v9, off
.LBB10_64:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s10
	s_cbranch_execz .LBB10_66
; %bb.65:
	v_add_co_u32 v0, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v10, off offset:1024
.LBB10_66:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s11
	s_cbranch_execz .LBB10_68
; %bb.67:
	v_add_co_u32 v0, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v11, off offset:2048
.LBB10_68:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s12
	s_cbranch_execz .LBB10_70
; %bb.69:
	v_add_co_u32 v0, vcc_lo, 0x2000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v12, off offset:3072
.LBB10_70:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s13
	s_cbranch_execz .LBB10_72
; %bb.71:
	v_add_co_u32 v0, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v13, off
.LBB10_72:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s14
	s_cbranch_execz .LBB10_74
; %bb.73:
	v_add_co_u32 v0, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v14, off offset:1024
.LBB10_74:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s15
	s_cbranch_execz .LBB10_76
; %bb.75:
	v_add_co_u32 v0, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v15, off offset:2048
.LBB10_76:
	s_or_b32 exec_lo, exec_lo, s0
	s_and_saveexec_b32 s0, s16
	s_cbranch_execz .LBB10_78
; %bb.77:
	v_add_co_u32 v0, vcc_lo, 0x3000, v17
	v_add_co_ci_u32_e32 v1, vcc_lo, 0, v18, vcc_lo
	global_store_b32 v[0:1], v16, off offset:3072
.LBB10_78:                              ; %_ZN7rocprim6detail23single_scan_kernel_implILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiEEvT1_mT4_T2_T3_.exit
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
		.amdhsa_group_segment_fixed_size 16896
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 25
		.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
	.section	.text._ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,"axG",@progbits,_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_,comdat
.Lfunc_end10:
	.size	_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_, .Lfunc_end10-_ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 2688
; NumSgprs: 26
; NumVgprs: 25
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 16896 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 3
; NumSGPRsForWavesPerEU: 26
; NumVGPRsForWavesPerEU: 25
; Occupancy: 14
; 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._Z11splitterKerIiLi100EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi100EEvPT_S1_PiS2_i,comdat
	.protected	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i ; -- Begin function _Z11splitterKerIiLi100EEvPT_S1_PiS2_i
	.globl	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i
	.p2align	8
	.type	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i,@function
_Z11splitterKerIiLi100EEvPT_S1_PiS2_i:  ; @_Z11splitterKerIiLi100EEvPT_S1_PiS2_i
; %bb.0:
	s_load_b32 s3, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s15, s3
	s_cbranch_scc1 .LBB11_28
; %bb.1:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_mov_b32 s2, s15
	s_ashr_i32 s3, s15, 31
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[2:3], 2
	s_waitcnt lgkmcnt(0)
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b64 s[8:9], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s1, s9, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_i32_e32 v0, s1
	v_mul_f32_e32 v0, 0x3dcccccd, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_i32_f32_e32 v0, v0
	v_readfirstlane_b32 s0, v0
	v_cmp_gt_i32_e32 vcc_lo, 1, v0
	v_readfirstlane_b32 s13, v0
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s9, s0, 31
	s_add_i32 s0, s0, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_xor_b32 s12, s0, s9
	s_mov_b32 s0, 0
	s_cbranch_vccnz .LBB11_4
; %bb.2:                                ; %.lr.ph.preheader
	v_cvt_f32_u32_e32 v1, s12
	s_sub_i32 s14, 0, s12
	s_ashr_i32 s15, s1, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_add_i32 s1, s1, s15
	v_rcp_iflag_f32_e32 v1, v1
	s_xor_b32 s1, s1, s15
	s_xor_b32 s15, s15, s9
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v1, v1
	v_readfirstlane_b32 s3, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s14, s3
	s_mul_hi_u32 s14, s3, s14
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s3, s14
	s_mul_hi_u32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s3, s12
	s_sub_i32 s1, s1, s14
	s_add_i32 s14, s3, 1
	s_sub_i32 s16, s1, s12
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s3, s14, s3
	s_cselect_b32 s1, s16, s1
	s_add_i32 s14, s3, 1
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s1, s14, s3
	s_mov_b32 s14, s13
	s_xor_b32 s3, s1, s15
	s_mov_b32 s1, 0
	s_sub_i32 s3, s3, s15
.LBB11_3:                               ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	v_dual_mov_b32 v1, s0 :: v_dual_mov_b32 v2, s1
	s_add_i32 s14, s14, -1
	s_add_i32 s1, s1, s3
	s_add_i32 s0, s0, 4
	s_cmp_eq_u32 s14, 0
	ds_store_b32 v1, v2
	s_cbranch_scc0 .LBB11_3
.LBB11_4:                               ; %._crit_edge
	s_cmp_lg_u32 s2, 0
	s_cselect_b32 s0, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s0
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB11_6
; %bb.5:
	s_mov_b32 s3, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[2:3], 2
	s_mov_b32 s17, s3
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_add_i32 s16, s2, -1
	s_lshl_b64 s[16:17], s[16:17], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s16, s10, s16
	s_addc_u32 s17, s11, s17
	s_clause 0x1
	s_load_b32 s1, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s14, s1, s14
	s_branch .LBB11_7
.LBB11_6:
	s_mov_b32 s3, -1
                                        ; implicit-def: $sgpr14
.LBB11_7:                               ; %Flow77
	v_cmp_lt_i32_e64 s1, 0, v0
	s_and_not1_b32 vcc_lo, exec_lo, s3
	s_cbranch_vccnz .LBB11_9
; %bb.8:
	s_load_b32 s14, s[10:11], 0x0
.LBB11_9:
	s_delay_alu instid0(VALU_DEP_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB11_12
; %bb.10:                               ; %.lr.ph.i.preheader
	s_mov_b32 s1, 0
	s_mov_b32 s3, s13
.LBB11_11:                              ; %.lr.ph.i
                                        ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v2, s1
	s_add_i32 s3, s3, -1
	s_add_i32 s1, s1, 4
	s_cmp_eq_u32 s3, 0
	ds_load_b32 v0, v2
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v0, s8, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v1, 31, v0
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v0, vcc_lo, s4, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, s5, v1, vcc_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s16, v0
	v_readfirstlane_b32 s17, v1
	s_load_b32 s15, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	v_mov_b32_e32 v0, s15
	ds_store_b32 v2, v0 offset:48
	s_cbranch_scc0 .LBB11_11
.LBB11_12:                              ; %._crit_edge.i
	s_cmp_lt_i32 s13, 2
	s_mov_b32 s4, 2
	s_cbranch_scc1 .LBB11_19
; %bb.13:                               ; %.preheader.i.i.preheader
	s_mov_b32 s1, 1
	s_mov_b32 s3, 2
	s_mov_b32 s5, 48
.LBB11_14:                              ; %.preheader.i.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB11_15 Depth 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s8, s5
	s_mov_b32 s15, s3
.LBB11_15:                              ; %.lr.ph.i.i
                                        ;   Parent Loop BB11_14 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	v_mov_b32_e32 v0, s8
	s_mov_b32 s16, -1
	ds_load_2addr_b32 v[0:1], v0 offset1:1
	s_waitcnt lgkmcnt(0)
	v_cmp_le_i32_e32 vcc_lo, v0, v1
	s_cbranch_vccnz .LBB11_17
; %bb.16:                               ;   in Loop: Header=BB11_15 Depth=2
	s_add_i32 s15, s15, -1
	v_mov_b32_e32 v2, s8
	s_add_i32 s8, s8, -4
	s_cmp_lt_i32 s15, 2
	s_cselect_b32 s16, -1, 0
	ds_store_2addr_b32 v2, v1, v0 offset1:1
.LBB11_17:                              ; %Flow72
                                        ;   in Loop: Header=BB11_15 Depth=2
	s_and_not1_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccnz .LBB11_15
; %bb.18:                               ; %.critedge.i.i
                                        ;   in Loop: Header=BB11_14 Depth=1
	s_add_i32 s1, s1, 1
	s_add_i32 s3, s3, 1
	s_add_i32 s5, s5, 4
	s_cmp_lg_u32 s1, s13
	s_cbranch_scc1 .LBB11_14
.LBB11_19:                              ; %_Z13insertionSortIiEvPT_ii.exit.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB11_21
; %bb.20:
	s_add_i32 s4, s2, -1
	s_mov_b32 s5, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[4:5], s[4:5], 2
	s_add_u32 s4, s10, s4
	s_addc_u32 s5, s11, s5
	s_load_b32 s1, s[4:5], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s4, s1, 2
.LBB11_21:
	s_waitcnt lgkmcnt(0)
	s_cmp_lt_i32 s14, 2
	s_cbranch_scc1 .LBB11_24
; %bb.22:                               ; %.lr.ph43.preheader.i
	s_ashr_i32 s1, s14, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s14, s1
	s_xor_b32 s3, s3, s1
	s_xor_b32 s1, s9, s1
	v_cvt_f32_u32_e32 v0, s3
	s_sub_i32 s8, 0, s3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_iflag_f32_e32 v0, v0
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v0, 0x4f7ffffe, v0
	v_cvt_u32_f32_e32 v0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s5, v0
	v_mov_b32_e32 v0, 0
	s_mul_i32 s8, s8, s5
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s8, s5, s8
	s_add_i32 s5, s5, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s5, s12, s5
	s_mul_i32 s8, s5, s3
	s_add_i32 s9, s5, 1
	s_sub_i32 s8, s12, s8
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s12, s8, s3
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s5, s9, s5
	s_cselect_b32 s8, s12, s8
	s_add_i32 s9, s5, 1
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s3, s9, s5
	s_ashr_i32 s5, s4, 31
	s_xor_b32 s3, s3, s1
	s_lshl_b64 s[4:5], s[4:5], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	s_add_u32 s4, s6, s4
	s_addc_u32 s5, s7, s5
	s_lshl_b32 s3, s3, 2
	s_lshl_b32 s1, s1, 2
	s_sub_i32 s1, s3, s1
	s_add_i32 s3, s14, -1
	s_add_i32 s8, s1, 48
.LBB11_23:                              ; %.lr.ph43.i
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	v_mov_b32_e32 v1, s8
	ds_load_b32 v1, v1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v0, v1, s[4:5]
	s_add_u32 s4, s4, 4
	s_addc_u32 s5, s5, 0
	s_add_i32 s3, s3, -1
	s_add_i32 s8, s8, s1
	s_cmp_eq_u32 s3, 0
	s_cbranch_scc0 .LBB11_23
.LBB11_24:                              ; %._crit_edge44.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB11_26
; %bb.25:
	s_add_i32 s0, s2, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v0, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v0, v0, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v0
	s_add_i32 s0, s0, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_ashr_i32 s1, s0, 31
	s_branch .LBB11_27
.LBB11_26:
	s_mov_b64 s[0:1], 0
.LBB11_27:                              ; %_Z12getSplittersIiLi100EEvPT_S1_PiiiiS2_.exit
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_mov_b32 s3, 0
	v_mov_b32_e32 v0, 0
	s_add_u32 s0, s6, s0
	v_bfrev_b32_e32 v1, 1
	s_addc_u32 s1, s7, s1
	s_lshl_b64 s[2:3], s[2:3], 2
	v_bfrev_b32_e32 v2, -2
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	global_store_b32 v0, v1, s[0:1]
	global_load_b32 v0, v0, s[2:3]
	s_waitcnt vmcnt(0)
	v_ashrrev_i32_e32 v1, 31, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	v_add_co_u32 v0, vcc_lo, s6, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, s7, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB11_28:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11splitterKerIiLi100EEvPT_S1_PiS2_i
		.amdhsa_group_segment_fixed_size 88
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 18
		.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._Z11splitterKerIiLi100EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi100EEvPT_S1_PiS2_i,comdat
.Lfunc_end11:
	.size	_Z11splitterKerIiLi100EEvPT_S1_PiS2_i, .Lfunc_end11-_Z11splitterKerIiLi100EEvPT_S1_PiS2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1160
; NumSgprs: 20
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 88 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 3
; 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
	.section	.text._Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,comdat
	.protected	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i ; -- Begin function _Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.globl	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
	.p2align	8
	.type	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,@function
_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i: ; @_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s16, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB12_2
; %bb.1:
	s_lshl_b64 s[2:3], s[12:13], 2
	s_mov_b32 s15, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	s_add_i32 s14, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[14:15], 2
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_clause 0x1
	s_load_b32 s2, s[2:3], 0x0
	s_load_b32 s3, s[14:15], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s18, s2, s3
	s_branch .LBB12_3
.LBB12_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr18
.LBB12_3:                               ; %Flow126
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB12_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s18, s[10:11], 0x0
.LBB12_5:
	s_load_b32 s2, s[0:1], 0x28
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s2
	s_cbranch_scc1 .LBB12_45
; %bb.6:
	s_mov_b32 s2, exec_lo
	v_cmpx_gt_u32_e64 s18, v0
	s_cbranch_execz .LBB12_45
; %bb.7:
	s_load_b64 s[2:3], s[0:1], 0x20
	s_mov_b32 s13, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[14:15], s[12:13], 2
                                        ; implicit-def: $vgpr5
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s8, s14
	s_addc_u32 s1, s9, s15
	s_waitcnt lgkmcnt(0)
	global_store_b32 v1, v1, s[2:3]
	global_load_b64 v[1:2], v1, s[0:1]
	s_ashr_i32 s1, s18, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s0, s18, s1
	s_xor_b32 s13, s0, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_cvt_f32_u32_e32 v3, s13
	s_sub_i32 s20, 0, s13
	v_rcp_iflag_f32_e32 v3, v3
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v3, 0x4f7ffffe, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v3, v3
	v_readfirstlane_b32 s19, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s20, s20, s19
	s_mul_hi_u32 s20, s19, s20
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	s_add_i32 s19, s19, s20
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s17, v1
	v_readfirstlane_b32 s0, v2
	s_sub_i32 s0, s0, s17
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s21, s0, 31
	s_add_i32 s22, s0, s21
	s_xor_b32 s1, s21, s1
	s_xor_b32 s20, s22, s21
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s19, s20, s19
	s_mul_i32 s22, s19, s13
	s_add_i32 s21, s19, 1
	s_sub_i32 s20, s20, s22
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s22, s20, s13
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s19, s21, s19
	s_cselect_b32 s20, s22, s20
	s_add_i32 s21, s19, 1
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s13, s21, s19
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_xor_b32 s13, s13, s1
	s_sub_i32 s1, s13, s1
	s_add_i32 s13, s18, -1
	v_mul_lo_u32 v6, s1, v0
	v_cmp_ne_u32_e32 vcc_lo, s13, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v1, s17, v6
	s_and_saveexec_b32 s13, vcc_lo
	s_xor_b32 s13, exec_lo, s13
; %bb.8:
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v5, s1, v1
; %bb.9:                                ; %Flow124
	s_and_not1_saveexec_b32 s13, s13
; %bb.10:
	s_mul_i32 s17, s1, s18
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s17
	v_add3_u32 v5, s0, s1, v1
; %bb.11:
	s_or_b32 exec_lo, exec_lo, s13
	s_ashr_i32 s13, s12, 31
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[12:13], 2
	v_cndmask_b32_e64 v4, 0, 1, s16
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_and_not1_b32 vcc_lo, exec_lo, s16
	global_load_b64 v[7:8], v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s13, v7
	v_readfirstlane_b32 s17, v8
	s_cbranch_vccnz .LBB12_13
; %bb.12:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_delay_alu instid0(VALU_DEP_1)
	s_add_i32 s8, s0, 1
	s_branch .LBB12_14
.LBB12_13:
	s_mov_b32 s8, 0
.LBB12_14:
	s_mov_b32 s1, exec_lo
	v_cmpx_lt_i32_e64 v1, v5
	s_cbranch_execz .LBB12_17
; %bb.15:                               ; %.lr.ph.preheader
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v6, 2, v6
	s_mov_b32 s9, 0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	v_add_co_u32 v2, vcc_lo, s4, v2
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB12_16:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v7, v[2:3], off
	v_add_nc_u32_e32 v1, 1, v1
	v_add_co_u32 v2, vcc_lo, v2, 4
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v3, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v1, v5
	s_or_b32 s9, s0, s9
	s_waitcnt vmcnt(0)
	ds_store_b32 v6, v7
	v_add_nc_u32_e32 v6, 4, v6
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB12_16
.LBB12_17:                              ; %Flow122
	s_or_b32 exec_lo, exec_lo, s1
	s_cmp_lt_i32 s18, 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc1 .LBB12_20
; %bb.18:                               ; %.lr.ph69.preheader
	s_ashr_i32 s9, s8, 31
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[8:9], 2
	s_add_i32 s18, s8, s18
	s_add_i32 s19, s8, -1
	s_add_u32 s0, s6, s0
	s_addc_u32 s1, s7, s1
	s_movk_i32 s6, 0x190
.LBB12_19:                              ; %.lr.ph69
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v2, v1, s[0:1]
	v_mov_b32_e32 v3, s6
	s_add_i32 s19, s19, 1
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s19, s18
	s_waitcnt vmcnt(0)
	ds_store_b32 v3, v2
	s_cbranch_scc0 .LBB12_19
.LBB12_20:                              ; %._crit_edge70
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB12_22
; %bb.21:
	s_add_u32 s6, s10, s14
	s_addc_u32 s7, s11, s15
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[8:9], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s8, s10, s8
	s_addc_u32 s9, s11, s9
	s_clause 0x1
	global_load_b32 v2, v1, s[6:7]
	global_load_b32 v1, v1, s[8:9]
	s_waitcnt vmcnt(0)
	v_sub_nc_u32_e32 v1, v2, v1
	s_branch .LBB12_23
.LBB12_22:
	s_mov_b32 s1, -1
                                        ; implicit-def: $vgpr1
.LBB12_23:                              ; %Flow117
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB12_25
; %bb.24:
	v_mov_b32_e32 v1, 0
	global_load_b32 v1, v1, s[10:11]
.LBB12_25:
	s_mov_b64 s[0:1], src_private_base
	s_mov_b32 s0, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	v_dual_mov_b32 v3, s1 :: v_dual_mov_b32 v2, s0
	s_waitcnt vmcnt(0)
	flat_store_b32 v[2:3], v1 dlc
	s_waitcnt_vscnt null, 0x0
	flat_load_b32 v1, v[2:3] glc dlc
	s_waitcnt vmcnt(0) lgkmcnt(0)
	v_cmp_lt_u32_e32 vcc_lo, v0, v1
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB12_45
; %bb.26:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	v_mov_b32_e32 v1, v0
	s_cbranch_vccnz .LBB12_28
; %bb.27:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v1, v1, s[0:1]
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v1, v1, v0
.LBB12_28:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	s_cbranch_vccnz .LBB12_30
; %bb.29:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_branch .LBB12_31
.LBB12_30:
	s_mov_b32 s0, 0
.LBB12_31:
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_ashrrev_i32_e32 v2, 31, v1
	v_mov_b32_e32 v3, 0
	s_sub_i32 s1, s17, s13
	s_cmp_lt_i32 s1, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[1:2], 2, v[1:2]
	v_add_co_u32 v1, vcc_lo, s2, v1
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v2, vcc_lo, s3, v2, vcc_lo
	global_store_b32 v[1:2], v3, off offset:4
	s_cbranch_scc1 .LBB12_38
; %bb.32:                               ; %.lr.ph.i
	v_dual_mov_b32 v6, 0 :: v_dual_lshlrev_b32 v5, 2, v0
	s_mov_b32 s6, 0
	s_mov_b32 s7, 0
	ds_load_b32 v4, v5 offset:400
	v_add_nc_u32_e32 v5, 0x190, v5
.LBB12_33:                              ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v7, s6
	s_mov_b32 s8, exec_lo
	ds_load_b32 v7, v7
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v7, v4
	s_cbranch_execz .LBB12_37
; %bb.34:                               ;   in Loop: Header=BB12_33 Depth=1
	ds_load_b32 v8, v5 offset:4
	s_mov_b32 s9, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_le_i32_e64 v7, v8
	s_cbranch_execz .LBB12_36
; %bb.35:                               ;   in Loop: Header=BB12_33 Depth=1
	v_add_nc_u32_e32 v8, 1, v6
	v_lshl_add_u32 v9, v6, 2, 16
	scratch_store_b32 v9, v7, off
	global_store_b32 v[1:2], v8, off offset:4
	v_mov_b32_e32 v6, v8
.LBB12_36:                              ; %Flow113
                                        ;   in Loop: Header=BB12_33 Depth=1
	s_or_b32 exec_lo, exec_lo, s9
.LBB12_37:                              ;   in Loop: Header=BB12_33 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s8
	s_add_i32 s7, s7, 1
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s7, s1
	s_cbranch_scc0 .LBB12_33
.LBB12_38:                              ; %._crit_edge.i
	s_mov_b32 s7, 0
	s_mov_b32 s6, exec_lo
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB12_42
; %bb.39:                               ; %.lr.ph50.i.preheader
	s_ashr_i32 s1, s0, 31
	v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v4, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s0, s2
	s_addc_u32 s1, s1, s3
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
.LBB12_40:                              ; %.lr.ph50.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v5, v4, s[0:1]
	v_add_nc_u32_e32 v0, -1, v0
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_or_b32 s7, vcc_lo, s7
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v3, v5, v3
	s_and_not1_b32 exec_lo, exec_lo, s7
	s_cbranch_execnz .LBB12_40
; %bb.41:                               ; %Flow111
	s_or_b32 exec_lo, exec_lo, s7
.LBB12_42:                              ; %Flow112
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s6
	global_load_b32 v0, v[1:2], off offset:4
	s_mov_b32 s0, 0
	s_waitcnt vmcnt(0)
	v_cmp_lt_i32_e32 vcc_lo, 0, v0
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB12_45
; %bb.43:                               ; %.lr.ph52.i
	v_dual_mov_b32 v3, 16 :: v_dual_add_nc_u32 v0, s13, v3
	s_mov_b32 s1, 0
.LBB12_44:                              ; =>This Inner Loop Header: Depth=1
	scratch_load_b32 v6, v3, off
	v_add_nc_u32_e32 v4, s1, v0
	s_add_i32 s1, s1, 1
	v_add_nc_u32_e32 v3, 4, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v5, 31, v4
	v_lshlrev_b64 v[4:5], 2, v[4:5]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v4, vcc_lo, s4, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	s_waitcnt vmcnt(0)
	global_store_b32 v[4:5], v6, off
	global_load_b32 v4, v[1:2], off offset:4
	s_waitcnt vmcnt(0)
	v_cmp_ge_i32_e32 vcc_lo, s1, v4
	s_or_b32 s0, vcc_lo, s0
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s0
	s_cbranch_execnz .LBB12_44
.LBB12_45:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 428
		.amdhsa_private_segment_fixed_size 416
		.amdhsa_kernarg_size 44
		.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 1
		.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 10
		.amdhsa_next_free_sgpr 23
		.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._Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i,comdat
.Lfunc_end12:
	.size	_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i, .Lfunc_end12-_Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1576
; NumSgprs: 25
; NumVgprs: 10
; ScratchSize: 416
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 428 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 25
; NumVGPRsForWavesPerEU: 10
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 1
; 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._Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,comdat
	.protected	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i ; -- Begin function _Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
	.globl	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
	.p2align	8
	.type	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,@function
_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i:  ; @_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s2, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB13_2
; %bb.1:
	s_lshl_b64 s[14:15], s[12:13], 2
	s_mov_b32 s17, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s14, s8, s14
	s_addc_u32 s15, s9, s15
	s_add_i32 s16, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[16:17], s[16:17], 2
	s_add_u32 s16, s8, s16
	s_addc_u32 s17, s9, s17
	s_clause 0x1
	s_load_b32 s3, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s3, s3, s14
	s_branch .LBB13_3
.LBB13_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr3
.LBB13_3:                               ; %Flow120
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB13_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s3, s[8:9], 0x0
.LBB13_5:
	s_load_b32 s0, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s0
	s_cbranch_scc1 .LBB13_34
; %bb.6:
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e64 s3, v0
	s_cbranch_execz .LBB13_34
; %bb.7:
	v_cndmask_b32_e64 v1, 0, 1, s2
	v_mov_b32_e32 v3, v0
	s_and_not1_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccnz .LBB13_9
; %bb.8:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s0, s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v3, s0, v0
.LBB13_9:
	s_delay_alu instid0(VALU_DEP_2)
	v_cmp_ne_u32_e32 vcc_lo, 1, v1
	s_mov_b32 s13, 0
	s_mov_b32 s2, 0
	s_cbranch_vccnz .LBB13_11
; %bb.10:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s2, s[0:1], 0x0
.LBB13_11:
	s_lshl_b64 s[0:1], s[12:13], 2
                                        ; implicit-def: $vgpr6
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	s_ashr_i32 s10, s3, 31
	s_add_i32 s8, s3, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_xor_b32 s11, s8, s10
	s_load_b64 s[8:9], s[0:1], 0x0
	v_cvt_f32_u32_e32 v1, s11
	v_rcp_iflag_f32_e32 v1, v1
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s0, s9, s8
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cvt_u32_f32_e32 v1, v1
	s_sub_i32 s9, 0, s11
	s_ashr_i32 s12, s0, 31
	s_add_i32 s13, s0, s12
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_readfirstlane_b32 s1, v1
	s_xor_b32 s13, s13, s12
	s_xor_b32 s10, s12, s10
	s_mul_i32 s9, s9, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s9, s1, s9
	s_add_i32 s1, s1, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s1, s13, s1
	s_mul_i32 s9, s1, s11
	s_add_i32 s12, s1, 1
	s_sub_i32 s9, s13, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s13, s9, s11
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_cselect_b32 s9, s13, s9
	s_add_i32 s12, s1, 1
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_add_i32 s9, s3, -1
	s_xor_b32 s1, s1, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s1, s1, s10
	v_mul_lo_u32 v4, s1, v0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v1, s8, v4
	s_mov_b32 s8, exec_lo
	v_cmpx_ne_u32_e64 s9, v0
	s_xor_b32 s8, exec_lo, s8
; %bb.12:
	s_delay_alu instid0(VALU_DEP_2)
	v_add_nc_u32_e32 v6, s1, v1
; %bb.13:                               ; %Flow118
	s_and_not1_saveexec_b32 s8, s8
; %bb.14:
	s_mul_i32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s3
	v_add3_u32 v6, s0, s1, v1
; %bb.15:
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_lt_i32_e32 vcc_lo, v1, v6
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v7, 2, v4
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB13_18
; %bb.16:                               ; %.lr.ph.preheader
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[9:10], 2, v[1:2]
	v_lshlrev_b32_e32 v8, 2, v4
	s_mov_b32 s8, 0
	v_add_co_u32 v4, s0, s4, v9
	v_mov_b32_e32 v9, v1
	s_delay_alu instid0(VALU_DEP_4)
	v_add_co_ci_u32_e64 v5, s0, s5, v10, s0
.LBB13_17:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v10, v[4:5], off
	v_add_nc_u32_e32 v9, 1, v9
	v_add_co_u32 v4, s0, v4, 4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_ci_u32_e64 v5, s0, 0, v5, s0
	v_cmp_ge_i32_e64 s1, v9, v6
	s_delay_alu instid0(VALU_DEP_1)
	s_or_b32 s8, s1, s8
	s_waitcnt vmcnt(0)
	ds_store_b32 v8, v10
	v_add_nc_u32_e32 v8, 4, v8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB13_17
.LBB13_18:                              ; %Flow117
	s_or_b32 exec_lo, exec_lo, s3
	v_mov_b32_e32 v5, 0
	s_mov_b32 s8, 0
	s_mov_b32 s1, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB13_22
; %bb.19:                               ; %.lr.ph68.preheader
	s_ashr_i32 s3, s2, 31
	s_mov_b32 s9, 0
	s_lshl_b64 s[2:3], s[2:3], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s2, s6
	s_addc_u32 s3, s3, s7
	s_add_u32 s2, s0, 4
	s_addc_u32 s3, s3, 0
.LBB13_20:                              ; %.lr.ph68
                                        ; =>This Inner Loop Header: Depth=1
	s_load_b32 s10, s[2:3], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s9, s10, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_dual_mov_b32 v5, s9 :: v_dual_add_nc_u32 v0, -1, v0
	s_add_u32 s2, s2, 4
	s_addc_u32 s3, s3, 0
	v_cmp_eq_u32_e64 s0, 0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_or_b32 s8, s0, s8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB13_20
; %bb.21:                               ; %Flow114
	s_or_b32 exec_lo, exec_lo, s8
.LBB13_22:                              ; %Flow115
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_or_b32 exec_lo, exec_lo, s1
	v_ashrrev_i32_e32 v4, 31, v3
	s_mov_b32 s1, exec_lo
	v_lshlrev_b64 v[3:4], 2, v[3:4]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_u32 v3, s0, s6, v3
	v_add_co_ci_u32_e64 v4, s0, s7, v4, s0
	global_load_b32 v0, v[3:4], off offset:4
	s_waitcnt vmcnt(0)
	v_cmpx_lt_i32_e32 1, v0
	s_cbranch_execz .LBB13_30
; %bb.23:                               ; %.preheader.i.preheader
	v_add_nc_u32_e32 v0, v0, v5
	v_add_nc_u32_e32 v8, 1, v5
	v_lshlrev_b32_e32 v9, 2, v5
	s_mov_b32 s2, 0
.LBB13_24:                              ; %.preheader.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB13_26 Depth 2
	s_mov_b32 s3, exec_lo
	s_delay_alu instid0(VALU_DEP_2)
	v_cmpx_gt_i32_e64 v8, v5
	s_cbranch_execz .LBB13_29
; %bb.25:                               ; %.lr.ph.i.preheader
                                        ;   in Loop: Header=BB13_24 Depth=1
	v_dual_mov_b32 v10, v9 :: v_dual_mov_b32 v11, v8
	s_mov_b32 s6, 0
                                        ; implicit-def: $sgpr7
.LBB13_26:                              ; %.lr.ph.i
                                        ;   Parent Loop BB13_24 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ds_load_2addr_b32 v[3:4], v10 offset1:1
	s_or_b32 s7, s7, exec_lo
	s_mov_b32 s8, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v3, v4
	s_cbranch_execz .LBB13_28
; %bb.27:                               ;   in Loop: Header=BB13_26 Depth=2
	v_add_nc_u32_e32 v11, -1, v11
	ds_store_2addr_b32 v10, v4, v3 offset1:1
	v_add_nc_u32_e32 v10, -4, v10
	s_and_not1_b32 s7, s7, exec_lo
	v_cmp_le_i32_e64 s0, v11, v5
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, s0, exec_lo
	s_or_b32 s7, s7, s0
.LBB13_28:                              ; %Flow109
                                        ;   in Loop: Header=BB13_26 Depth=2
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s7
	s_or_b32 s6, s0, s6
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s6
	s_cbranch_execnz .LBB13_26
.LBB13_29:                              ; %Flow111
                                        ;   in Loop: Header=BB13_24 Depth=1
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v8, 1, v8
	v_add_nc_u32_e32 v9, 4, v9
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v8, v0
	s_or_b32 s2, s0, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s2
	s_cbranch_execnz .LBB13_24
.LBB13_30:                              ; %Flow113
	s_or_b32 exec_lo, exec_lo, s1
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB13_33
; %bb.31:                               ; %.lr.ph72.preheader
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	s_mov_b32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v2, vcc_lo, s4, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB13_32:                              ; %.lr.ph72
                                        ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v0, v7
	v_add_nc_u32_e32 v1, 1, v1
	v_add_nc_u32_e32 v7, 4, v7
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e32 vcc_lo, v1, v6
	s_or_b32 s1, vcc_lo, s1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v[2:3], v0, off
	v_add_co_u32 v2, s0, v2, 4
	v_add_co_ci_u32_e64 v3, s0, 0, v3, s0
	s_and_not1_b32 exec_lo, exec_lo, s1
	s_cbranch_execnz .LBB13_32
.LBB13_33:                              ; %._crit_edge73
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB13_34:
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 400
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 12
		.amdhsa_next_free_sgpr 18
		.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._Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i,comdat
.Lfunc_end13:
	.size	_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i, .Lfunc_end13-_Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1204
; NumSgprs: 20
; NumVgprs: 12
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 400 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 12
; 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._Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,comdat
	.protected	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i ; -- Begin function _Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
	.globl	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
	.p2align	8
	.type	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,@function
_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i: ; @_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
; %bb.0:
	s_load_b32 s3, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s15, s3
	s_cbranch_scc1 .LBB14_28
; %bb.1:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_mov_b32 s2, s15
	s_ashr_i32 s3, s15, 31
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[2:3], 2
	s_waitcnt lgkmcnt(0)
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b64 s[8:9], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s1, s9, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_i32_e32 v0, s1
	v_mul_f32_e32 v0, 0x3dcccccd, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_i32_f32_e32 v0, v0
	v_readfirstlane_b32 s0, v0
	v_cmp_gt_i32_e32 vcc_lo, 1, v0
	v_readfirstlane_b32 s13, v0
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s9, s0, 31
	s_add_i32 s0, s0, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_xor_b32 s12, s0, s9
	s_mov_b32 s0, 0
	s_cbranch_vccnz .LBB14_4
; %bb.2:                                ; %.lr.ph.preheader
	v_cvt_f32_u32_e32 v1, s12
	s_sub_i32 s14, 0, s12
	s_ashr_i32 s15, s1, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_add_i32 s1, s1, s15
	v_rcp_iflag_f32_e32 v1, v1
	s_xor_b32 s1, s1, s15
	s_xor_b32 s15, s15, s9
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v1, v1
	v_readfirstlane_b32 s3, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s14, s3
	s_mul_hi_u32 s14, s3, s14
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s3, s14
	s_mul_hi_u32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s3, s12
	s_sub_i32 s1, s1, s14
	s_add_i32 s14, s3, 1
	s_sub_i32 s16, s1, s12
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s3, s14, s3
	s_cselect_b32 s1, s16, s1
	s_add_i32 s14, s3, 1
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s1, s14, s3
	s_mov_b32 s14, s13
	s_xor_b32 s3, s1, s15
	s_mov_b32 s1, 0
	s_sub_i32 s3, s3, s15
.LBB14_3:                               ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	v_dual_mov_b32 v1, s0 :: v_dual_mov_b32 v2, s1
	s_add_i32 s14, s14, -1
	s_add_i32 s1, s1, s3
	s_add_i32 s0, s0, 4
	s_cmp_eq_u32 s14, 0
	ds_store_b32 v1, v2
	s_cbranch_scc0 .LBB14_3
.LBB14_4:                               ; %._crit_edge
	s_cmp_lg_u32 s2, 0
	s_cselect_b32 s0, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s0
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB14_6
; %bb.5:
	s_mov_b32 s3, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[2:3], 2
	s_mov_b32 s17, s3
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_add_i32 s16, s2, -1
	s_lshl_b64 s[16:17], s[16:17], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s16, s10, s16
	s_addc_u32 s17, s11, s17
	s_clause 0x1
	s_load_b32 s1, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s14, s1, s14
	s_branch .LBB14_7
.LBB14_6:
	s_mov_b32 s3, -1
                                        ; implicit-def: $sgpr14
.LBB14_7:                               ; %Flow77
	v_cmp_lt_i32_e64 s1, 0, v0
	s_and_not1_b32 vcc_lo, exec_lo, s3
	s_cbranch_vccnz .LBB14_9
; %bb.8:
	s_load_b32 s14, s[10:11], 0x0
.LBB14_9:
	s_delay_alu instid0(VALU_DEP_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB14_12
; %bb.10:                               ; %.lr.ph.i.preheader
	s_mov_b32 s1, 0
	s_mov_b32 s3, s13
.LBB14_11:                              ; %.lr.ph.i
                                        ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v2, s1
	s_add_i32 s3, s3, -1
	s_add_i32 s1, s1, 4
	s_cmp_eq_u32 s3, 0
	ds_load_b32 v0, v2
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v0, s8, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v1, 31, v0
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v0, vcc_lo, s4, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, s5, v1, vcc_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s16, v0
	v_readfirstlane_b32 s17, v1
	s_load_b32 s15, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	v_mov_b32_e32 v0, s15
	ds_store_b32 v2, v0 offset:400
	s_cbranch_scc0 .LBB14_11
.LBB14_12:                              ; %._crit_edge.i
	s_cmp_lt_i32 s13, 2
	s_mov_b32 s4, 2
	s_cbranch_scc1 .LBB14_19
; %bb.13:                               ; %.preheader.i.i.preheader
	s_mov_b32 s1, 1
	s_mov_b32 s3, 2
	s_movk_i32 s5, 0x190
.LBB14_14:                              ; %.preheader.i.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB14_15 Depth 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s8, s5
	s_mov_b32 s15, s3
.LBB14_15:                              ; %.lr.ph.i.i
                                        ;   Parent Loop BB14_14 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	v_mov_b32_e32 v0, s8
	s_mov_b32 s16, -1
	ds_load_2addr_b32 v[0:1], v0 offset1:1
	s_waitcnt lgkmcnt(0)
	v_cmp_le_i32_e32 vcc_lo, v0, v1
	s_cbranch_vccnz .LBB14_17
; %bb.16:                               ;   in Loop: Header=BB14_15 Depth=2
	s_add_i32 s15, s15, -1
	v_mov_b32_e32 v2, s8
	s_add_i32 s8, s8, -4
	s_cmp_lt_i32 s15, 2
	s_cselect_b32 s16, -1, 0
	ds_store_2addr_b32 v2, v1, v0 offset1:1
.LBB14_17:                              ; %Flow72
                                        ;   in Loop: Header=BB14_15 Depth=2
	s_and_not1_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccnz .LBB14_15
; %bb.18:                               ; %.critedge.i.i
                                        ;   in Loop: Header=BB14_14 Depth=1
	s_add_i32 s1, s1, 1
	s_add_i32 s3, s3, 1
	s_add_i32 s5, s5, 4
	s_cmp_lg_u32 s1, s13
	s_cbranch_scc1 .LBB14_14
.LBB14_19:                              ; %_Z13insertionSortIiEvPT_ii.exit.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB14_21
; %bb.20:
	s_add_i32 s4, s2, -1
	s_mov_b32 s5, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[4:5], s[4:5], 2
	s_add_u32 s4, s10, s4
	s_addc_u32 s5, s11, s5
	s_load_b32 s1, s[4:5], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s4, s1, 2
.LBB14_21:
	s_waitcnt lgkmcnt(0)
	s_cmp_lt_i32 s14, 2
	s_cbranch_scc1 .LBB14_24
; %bb.22:                               ; %.lr.ph43.preheader.i
	s_ashr_i32 s1, s14, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s14, s1
	s_xor_b32 s3, s3, s1
	s_xor_b32 s1, s9, s1
	v_cvt_f32_u32_e32 v0, s3
	s_sub_i32 s8, 0, s3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_iflag_f32_e32 v0, v0
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v0, 0x4f7ffffe, v0
	v_cvt_u32_f32_e32 v0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s5, v0
	v_mov_b32_e32 v0, 0
	s_mul_i32 s8, s8, s5
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s8, s5, s8
	s_add_i32 s5, s5, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s5, s12, s5
	s_mul_i32 s8, s5, s3
	s_add_i32 s9, s5, 1
	s_sub_i32 s8, s12, s8
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s12, s8, s3
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s5, s9, s5
	s_cselect_b32 s8, s12, s8
	s_add_i32 s9, s5, 1
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s3, s9, s5
	s_ashr_i32 s5, s4, 31
	s_xor_b32 s3, s3, s1
	s_lshl_b64 s[4:5], s[4:5], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	s_add_u32 s4, s6, s4
	s_addc_u32 s5, s7, s5
	s_lshl_b32 s3, s3, 2
	s_lshl_b32 s1, s1, 2
	s_sub_i32 s1, s3, s1
	s_add_i32 s3, s14, -1
	s_add_i32 s8, s1, 0x190
.LBB14_23:                              ; %.lr.ph43.i
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	v_mov_b32_e32 v1, s8
	ds_load_b32 v1, v1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v0, v1, s[4:5]
	s_add_u32 s4, s4, 4
	s_addc_u32 s5, s5, 0
	s_add_i32 s3, s3, -1
	s_add_i32 s8, s8, s1
	s_cmp_eq_u32 s3, 0
	s_cbranch_scc0 .LBB14_23
.LBB14_24:                              ; %._crit_edge44.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB14_26
; %bb.25:
	s_add_i32 s0, s2, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v0, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v0, v0, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v0
	s_add_i32 s0, s0, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_ashr_i32 s1, s0, 31
	s_branch .LBB14_27
.LBB14_26:
	s_mov_b64 s[0:1], 0
.LBB14_27:                              ; %_Z12getSplittersIiLi1000EEvPT_S1_PiiiiS2_.exit
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_mov_b32 s3, 0
	v_mov_b32_e32 v0, 0
	s_add_u32 s0, s6, s0
	v_bfrev_b32_e32 v1, 1
	s_addc_u32 s1, s7, s1
	s_lshl_b64 s[2:3], s[2:3], 2
	v_bfrev_b32_e32 v2, -2
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	global_store_b32 v0, v1, s[0:1]
	global_load_b32 v0, v0, s[2:3]
	s_waitcnt vmcnt(0)
	v_ashrrev_i32_e32 v1, 31, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	v_add_co_u32 v0, vcc_lo, s6, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, s7, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB14_28:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
		.amdhsa_group_segment_fixed_size 800
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 18
		.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._Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i,comdat
.Lfunc_end14:
	.size	_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i, .Lfunc_end14-_Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1164
; NumSgprs: 20
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 800 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 3
; 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
	.section	.text._Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,comdat
	.protected	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i ; -- Begin function _Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.globl	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
	.p2align	8
	.type	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,@function
_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i: ; @_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s16, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB15_2
; %bb.1:
	s_lshl_b64 s[2:3], s[12:13], 2
	s_mov_b32 s15, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	s_add_i32 s14, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[14:15], 2
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_clause 0x1
	s_load_b32 s2, s[2:3], 0x0
	s_load_b32 s3, s[14:15], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s18, s2, s3
	s_branch .LBB15_3
.LBB15_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr18
.LBB15_3:                               ; %Flow126
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB15_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s18, s[10:11], 0x0
.LBB15_5:
	s_load_b32 s2, s[0:1], 0x28
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s2
	s_cbranch_scc1 .LBB15_45
; %bb.6:
	s_mov_b32 s2, exec_lo
	v_cmpx_gt_u32_e64 s18, v0
	s_cbranch_execz .LBB15_45
; %bb.7:
	s_load_b64 s[2:3], s[0:1], 0x20
	s_mov_b32 s13, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[14:15], s[12:13], 2
                                        ; implicit-def: $vgpr5
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s8, s14
	s_addc_u32 s1, s9, s15
	s_waitcnt lgkmcnt(0)
	global_store_b32 v1, v1, s[2:3]
	global_load_b64 v[1:2], v1, s[0:1]
	s_ashr_i32 s1, s18, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s0, s18, s1
	s_xor_b32 s13, s0, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_cvt_f32_u32_e32 v3, s13
	s_sub_i32 s20, 0, s13
	v_rcp_iflag_f32_e32 v3, v3
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v3, 0x4f7ffffe, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v3, v3
	v_readfirstlane_b32 s19, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s20, s20, s19
	s_mul_hi_u32 s20, s19, s20
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	s_add_i32 s19, s19, s20
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s17, v1
	v_readfirstlane_b32 s0, v2
	s_sub_i32 s0, s0, s17
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s21, s0, 31
	s_add_i32 s22, s0, s21
	s_xor_b32 s1, s21, s1
	s_xor_b32 s20, s22, s21
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s19, s20, s19
	s_mul_i32 s22, s19, s13
	s_add_i32 s21, s19, 1
	s_sub_i32 s20, s20, s22
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s22, s20, s13
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s19, s21, s19
	s_cselect_b32 s20, s22, s20
	s_add_i32 s21, s19, 1
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s13, s21, s19
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_xor_b32 s13, s13, s1
	s_sub_i32 s1, s13, s1
	s_add_i32 s13, s18, -1
	v_mul_lo_u32 v6, s1, v0
	v_cmp_ne_u32_e32 vcc_lo, s13, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v1, s17, v6
	s_and_saveexec_b32 s13, vcc_lo
	s_xor_b32 s13, exec_lo, s13
; %bb.8:
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v5, s1, v1
; %bb.9:                                ; %Flow124
	s_and_not1_saveexec_b32 s13, s13
; %bb.10:
	s_mul_i32 s17, s1, s18
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s17
	v_add3_u32 v5, s0, s1, v1
; %bb.11:
	s_or_b32 exec_lo, exec_lo, s13
	s_ashr_i32 s13, s12, 31
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[12:13], 2
	v_cndmask_b32_e64 v4, 0, 1, s16
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_and_not1_b32 vcc_lo, exec_lo, s16
	global_load_b64 v[7:8], v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s13, v7
	v_readfirstlane_b32 s17, v8
	s_cbranch_vccnz .LBB15_13
; %bb.12:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_delay_alu instid0(VALU_DEP_1)
	s_add_i32 s8, s0, 1
	s_branch .LBB15_14
.LBB15_13:
	s_mov_b32 s8, 0
.LBB15_14:
	s_mov_b32 s1, exec_lo
	v_cmpx_lt_i32_e64 v1, v5
	s_cbranch_execz .LBB15_17
; %bb.15:                               ; %.lr.ph.preheader
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v6, 2, v6
	s_mov_b32 s9, 0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	v_add_co_u32 v2, vcc_lo, s4, v2
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB15_16:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v7, v[2:3], off
	v_add_nc_u32_e32 v1, 1, v1
	v_add_co_u32 v2, vcc_lo, v2, 4
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v3, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v1, v5
	s_or_b32 s9, s0, s9
	s_waitcnt vmcnt(0)
	ds_store_b32 v6, v7
	v_add_nc_u32_e32 v6, 4, v6
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB15_16
.LBB15_17:                              ; %Flow122
	s_or_b32 exec_lo, exec_lo, s1
	s_cmp_lt_i32 s18, 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc1 .LBB15_20
; %bb.18:                               ; %.lr.ph69.preheader
	s_ashr_i32 s9, s8, 31
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[8:9], 2
	s_add_i32 s18, s8, s18
	s_add_i32 s19, s8, -1
	s_add_u32 s0, s6, s0
	s_addc_u32 s1, s7, s1
	s_movk_i32 s6, 0xfa0
.LBB15_19:                              ; %.lr.ph69
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v2, v1, s[0:1]
	v_mov_b32_e32 v3, s6
	s_add_i32 s19, s19, 1
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s19, s18
	s_waitcnt vmcnt(0)
	ds_store_b32 v3, v2
	s_cbranch_scc0 .LBB15_19
.LBB15_20:                              ; %._crit_edge70
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB15_22
; %bb.21:
	s_add_u32 s6, s10, s14
	s_addc_u32 s7, s11, s15
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[8:9], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s8, s10, s8
	s_addc_u32 s9, s11, s9
	s_clause 0x1
	global_load_b32 v2, v1, s[6:7]
	global_load_b32 v1, v1, s[8:9]
	s_waitcnt vmcnt(0)
	v_sub_nc_u32_e32 v1, v2, v1
	s_branch .LBB15_23
.LBB15_22:
	s_mov_b32 s1, -1
                                        ; implicit-def: $vgpr1
.LBB15_23:                              ; %Flow117
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB15_25
; %bb.24:
	v_mov_b32_e32 v1, 0
	global_load_b32 v1, v1, s[10:11]
.LBB15_25:
	s_mov_b64 s[0:1], src_private_base
	s_mov_b32 s0, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	v_dual_mov_b32 v3, s1 :: v_dual_mov_b32 v2, s0
	s_waitcnt vmcnt(0)
	flat_store_b32 v[2:3], v1 dlc
	s_waitcnt_vscnt null, 0x0
	flat_load_b32 v1, v[2:3] glc dlc
	s_waitcnt vmcnt(0) lgkmcnt(0)
	v_cmp_lt_u32_e32 vcc_lo, v0, v1
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB15_45
; %bb.26:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	v_mov_b32_e32 v1, v0
	s_cbranch_vccnz .LBB15_28
; %bb.27:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v1, v1, s[0:1]
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v1, v1, v0
.LBB15_28:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	s_cbranch_vccnz .LBB15_30
; %bb.29:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_branch .LBB15_31
.LBB15_30:
	s_mov_b32 s0, 0
.LBB15_31:
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_ashrrev_i32_e32 v2, 31, v1
	v_mov_b32_e32 v3, 0
	s_sub_i32 s1, s17, s13
	s_cmp_lt_i32 s1, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[1:2], 2, v[1:2]
	v_add_co_u32 v1, vcc_lo, s2, v1
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v2, vcc_lo, s3, v2, vcc_lo
	global_store_b32 v[1:2], v3, off offset:4
	s_cbranch_scc1 .LBB15_38
; %bb.32:                               ; %.lr.ph.i
	v_dual_mov_b32 v6, 0 :: v_dual_lshlrev_b32 v5, 2, v0
	s_mov_b32 s6, 0
	s_mov_b32 s7, 0
	ds_load_b32 v4, v5 offset:4000
	v_add_nc_u32_e32 v5, 0xfa0, v5
.LBB15_33:                              ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v7, s6
	s_mov_b32 s8, exec_lo
	ds_load_b32 v7, v7
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v7, v4
	s_cbranch_execz .LBB15_37
; %bb.34:                               ;   in Loop: Header=BB15_33 Depth=1
	ds_load_b32 v8, v5 offset:4
	s_mov_b32 s9, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_le_i32_e64 v7, v8
	s_cbranch_execz .LBB15_36
; %bb.35:                               ;   in Loop: Header=BB15_33 Depth=1
	v_add_nc_u32_e32 v8, 1, v6
	v_lshl_add_u32 v9, v6, 2, 16
	scratch_store_b32 v9, v7, off
	global_store_b32 v[1:2], v8, off offset:4
	v_mov_b32_e32 v6, v8
.LBB15_36:                              ; %Flow113
                                        ;   in Loop: Header=BB15_33 Depth=1
	s_or_b32 exec_lo, exec_lo, s9
.LBB15_37:                              ;   in Loop: Header=BB15_33 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s8
	s_add_i32 s7, s7, 1
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s7, s1
	s_cbranch_scc0 .LBB15_33
.LBB15_38:                              ; %._crit_edge.i
	s_mov_b32 s7, 0
	s_mov_b32 s6, exec_lo
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB15_42
; %bb.39:                               ; %.lr.ph50.i.preheader
	s_ashr_i32 s1, s0, 31
	v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v4, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s0, s2
	s_addc_u32 s1, s1, s3
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
.LBB15_40:                              ; %.lr.ph50.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v5, v4, s[0:1]
	v_add_nc_u32_e32 v0, -1, v0
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_or_b32 s7, vcc_lo, s7
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v3, v5, v3
	s_and_not1_b32 exec_lo, exec_lo, s7
	s_cbranch_execnz .LBB15_40
; %bb.41:                               ; %Flow111
	s_or_b32 exec_lo, exec_lo, s7
.LBB15_42:                              ; %Flow112
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s6
	global_load_b32 v0, v[1:2], off offset:4
	s_mov_b32 s0, 0
	s_waitcnt vmcnt(0)
	v_cmp_lt_i32_e32 vcc_lo, 0, v0
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB15_45
; %bb.43:                               ; %.lr.ph52.i
	v_dual_mov_b32 v3, 16 :: v_dual_add_nc_u32 v0, s13, v3
	s_mov_b32 s1, 0
.LBB15_44:                              ; =>This Inner Loop Header: Depth=1
	scratch_load_b32 v6, v3, off
	v_add_nc_u32_e32 v4, s1, v0
	s_add_i32 s1, s1, 1
	v_add_nc_u32_e32 v3, 4, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v5, 31, v4
	v_lshlrev_b64 v[4:5], 2, v[4:5]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v4, vcc_lo, s4, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	s_waitcnt vmcnt(0)
	global_store_b32 v[4:5], v6, off
	global_load_b32 v4, v[1:2], off offset:4
	s_waitcnt vmcnt(0)
	v_cmp_ge_i32_e32 vcc_lo, s1, v4
	s_or_b32 s0, vcc_lo, s0
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s0
	s_cbranch_execnz .LBB15_44
.LBB15_45:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 4208
		.amdhsa_private_segment_fixed_size 4016
		.amdhsa_kernarg_size 44
		.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 1
		.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 10
		.amdhsa_next_free_sgpr 23
		.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._Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i,comdat
.Lfunc_end15:
	.size	_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i, .Lfunc_end15-_Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1576
; NumSgprs: 25
; NumVgprs: 10
; ScratchSize: 4016
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 4208 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 25
; NumVGPRsForWavesPerEU: 10
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 1
; 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._Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,comdat
	.protected	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i ; -- Begin function _Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.globl	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
	.p2align	8
	.type	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,@function
_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i: ; @_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s2, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB16_2
; %bb.1:
	s_lshl_b64 s[14:15], s[12:13], 2
	s_mov_b32 s17, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s14, s8, s14
	s_addc_u32 s15, s9, s15
	s_add_i32 s16, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[16:17], s[16:17], 2
	s_add_u32 s16, s8, s16
	s_addc_u32 s17, s9, s17
	s_clause 0x1
	s_load_b32 s3, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s3, s3, s14
	s_branch .LBB16_3
.LBB16_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr3
.LBB16_3:                               ; %Flow120
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB16_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s3, s[8:9], 0x0
.LBB16_5:
	s_load_b32 s0, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s0
	s_cbranch_scc1 .LBB16_34
; %bb.6:
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e64 s3, v0
	s_cbranch_execz .LBB16_34
; %bb.7:
	v_cndmask_b32_e64 v1, 0, 1, s2
	v_mov_b32_e32 v3, v0
	s_and_not1_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccnz .LBB16_9
; %bb.8:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s0, s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v3, s0, v0
.LBB16_9:
	s_delay_alu instid0(VALU_DEP_2)
	v_cmp_ne_u32_e32 vcc_lo, 1, v1
	s_mov_b32 s13, 0
	s_mov_b32 s2, 0
	s_cbranch_vccnz .LBB16_11
; %bb.10:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s2, s[0:1], 0x0
.LBB16_11:
	s_lshl_b64 s[0:1], s[12:13], 2
                                        ; implicit-def: $vgpr6
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	s_ashr_i32 s10, s3, 31
	s_add_i32 s8, s3, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_xor_b32 s11, s8, s10
	s_load_b64 s[8:9], s[0:1], 0x0
	v_cvt_f32_u32_e32 v1, s11
	v_rcp_iflag_f32_e32 v1, v1
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s0, s9, s8
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cvt_u32_f32_e32 v1, v1
	s_sub_i32 s9, 0, s11
	s_ashr_i32 s12, s0, 31
	s_add_i32 s13, s0, s12
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_readfirstlane_b32 s1, v1
	s_xor_b32 s13, s13, s12
	s_xor_b32 s10, s12, s10
	s_mul_i32 s9, s9, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s9, s1, s9
	s_add_i32 s1, s1, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s1, s13, s1
	s_mul_i32 s9, s1, s11
	s_add_i32 s12, s1, 1
	s_sub_i32 s9, s13, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s13, s9, s11
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_cselect_b32 s9, s13, s9
	s_add_i32 s12, s1, 1
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_add_i32 s9, s3, -1
	s_xor_b32 s1, s1, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s1, s1, s10
	v_mul_lo_u32 v4, s1, v0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v1, s8, v4
	s_mov_b32 s8, exec_lo
	v_cmpx_ne_u32_e64 s9, v0
	s_xor_b32 s8, exec_lo, s8
; %bb.12:
	s_delay_alu instid0(VALU_DEP_2)
	v_add_nc_u32_e32 v6, s1, v1
; %bb.13:                               ; %Flow118
	s_and_not1_saveexec_b32 s8, s8
; %bb.14:
	s_mul_i32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s3
	v_add3_u32 v6, s0, s1, v1
; %bb.15:
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_lt_i32_e32 vcc_lo, v1, v6
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v7, 2, v4
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB16_18
; %bb.16:                               ; %.lr.ph.preheader
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[9:10], 2, v[1:2]
	v_lshlrev_b32_e32 v8, 2, v4
	s_mov_b32 s8, 0
	v_add_co_u32 v4, s0, s4, v9
	v_mov_b32_e32 v9, v1
	s_delay_alu instid0(VALU_DEP_4)
	v_add_co_ci_u32_e64 v5, s0, s5, v10, s0
.LBB16_17:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v10, v[4:5], off
	v_add_nc_u32_e32 v9, 1, v9
	v_add_co_u32 v4, s0, v4, 4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_ci_u32_e64 v5, s0, 0, v5, s0
	v_cmp_ge_i32_e64 s1, v9, v6
	s_delay_alu instid0(VALU_DEP_1)
	s_or_b32 s8, s1, s8
	s_waitcnt vmcnt(0)
	ds_store_b32 v8, v10
	v_add_nc_u32_e32 v8, 4, v8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB16_17
.LBB16_18:                              ; %Flow117
	s_or_b32 exec_lo, exec_lo, s3
	v_mov_b32_e32 v5, 0
	s_mov_b32 s8, 0
	s_mov_b32 s1, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB16_22
; %bb.19:                               ; %.lr.ph68.preheader
	s_ashr_i32 s3, s2, 31
	s_mov_b32 s9, 0
	s_lshl_b64 s[2:3], s[2:3], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s2, s6
	s_addc_u32 s3, s3, s7
	s_add_u32 s2, s0, 4
	s_addc_u32 s3, s3, 0
.LBB16_20:                              ; %.lr.ph68
                                        ; =>This Inner Loop Header: Depth=1
	s_load_b32 s10, s[2:3], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s9, s10, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_dual_mov_b32 v5, s9 :: v_dual_add_nc_u32 v0, -1, v0
	s_add_u32 s2, s2, 4
	s_addc_u32 s3, s3, 0
	v_cmp_eq_u32_e64 s0, 0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_or_b32 s8, s0, s8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB16_20
; %bb.21:                               ; %Flow114
	s_or_b32 exec_lo, exec_lo, s8
.LBB16_22:                              ; %Flow115
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_or_b32 exec_lo, exec_lo, s1
	v_ashrrev_i32_e32 v4, 31, v3
	s_mov_b32 s1, exec_lo
	v_lshlrev_b64 v[3:4], 2, v[3:4]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_u32 v3, s0, s6, v3
	v_add_co_ci_u32_e64 v4, s0, s7, v4, s0
	global_load_b32 v0, v[3:4], off offset:4
	s_waitcnt vmcnt(0)
	v_cmpx_lt_i32_e32 1, v0
	s_cbranch_execz .LBB16_30
; %bb.23:                               ; %.preheader.i.preheader
	v_add_nc_u32_e32 v0, v0, v5
	v_add_nc_u32_e32 v8, 1, v5
	v_lshlrev_b32_e32 v9, 2, v5
	s_mov_b32 s2, 0
.LBB16_24:                              ; %.preheader.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB16_26 Depth 2
	s_mov_b32 s3, exec_lo
	s_delay_alu instid0(VALU_DEP_2)
	v_cmpx_gt_i32_e64 v8, v5
	s_cbranch_execz .LBB16_29
; %bb.25:                               ; %.lr.ph.i.preheader
                                        ;   in Loop: Header=BB16_24 Depth=1
	v_dual_mov_b32 v10, v9 :: v_dual_mov_b32 v11, v8
	s_mov_b32 s6, 0
                                        ; implicit-def: $sgpr7
.LBB16_26:                              ; %.lr.ph.i
                                        ;   Parent Loop BB16_24 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ds_load_2addr_b32 v[3:4], v10 offset1:1
	s_or_b32 s7, s7, exec_lo
	s_mov_b32 s8, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v3, v4
	s_cbranch_execz .LBB16_28
; %bb.27:                               ;   in Loop: Header=BB16_26 Depth=2
	v_add_nc_u32_e32 v11, -1, v11
	ds_store_2addr_b32 v10, v4, v3 offset1:1
	v_add_nc_u32_e32 v10, -4, v10
	s_and_not1_b32 s7, s7, exec_lo
	v_cmp_le_i32_e64 s0, v11, v5
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, s0, exec_lo
	s_or_b32 s7, s7, s0
.LBB16_28:                              ; %Flow109
                                        ;   in Loop: Header=BB16_26 Depth=2
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s7
	s_or_b32 s6, s0, s6
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s6
	s_cbranch_execnz .LBB16_26
.LBB16_29:                              ; %Flow111
                                        ;   in Loop: Header=BB16_24 Depth=1
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v8, 1, v8
	v_add_nc_u32_e32 v9, 4, v9
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v8, v0
	s_or_b32 s2, s0, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s2
	s_cbranch_execnz .LBB16_24
.LBB16_30:                              ; %Flow113
	s_or_b32 exec_lo, exec_lo, s1
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB16_33
; %bb.31:                               ; %.lr.ph72.preheader
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	s_mov_b32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v2, vcc_lo, s4, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB16_32:                              ; %.lr.ph72
                                        ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v0, v7
	v_add_nc_u32_e32 v1, 1, v1
	v_add_nc_u32_e32 v7, 4, v7
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e32 vcc_lo, v1, v6
	s_or_b32 s1, vcc_lo, s1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v[2:3], v0, off
	v_add_co_u32 v2, s0, v2, 4
	v_add_co_ci_u32_e64 v3, s0, 0, v3, s0
	s_and_not1_b32 exec_lo, exec_lo, s1
	s_cbranch_execnz .LBB16_32
.LBB16_33:                              ; %._crit_edge73
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB16_34:
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 4000
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 12
		.amdhsa_next_free_sgpr 18
		.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._Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i,comdat
.Lfunc_end16:
	.size	_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i, .Lfunc_end16-_Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1204
; NumSgprs: 20
; NumVgprs: 12
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 4000 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 12
; 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._Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,comdat
	.protected	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i ; -- Begin function _Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
	.globl	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
	.p2align	8
	.type	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,@function
_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i: ; @_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
; %bb.0:
	s_load_b32 s3, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s15, s3
	s_cbranch_scc1 .LBB17_28
; %bb.1:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_mov_b32 s2, s15
	s_ashr_i32 s3, s15, 31
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[2:3], 2
	s_waitcnt lgkmcnt(0)
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b64 s[8:9], s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s1, s9, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_f32_i32_e32 v0, s1
	v_mul_f32_e32 v0, 0x3dcccccd, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_i32_f32_e32 v0, v0
	v_readfirstlane_b32 s0, v0
	v_cmp_gt_i32_e32 vcc_lo, 1, v0
	v_readfirstlane_b32 s13, v0
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s9, s0, 31
	s_add_i32 s0, s0, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_xor_b32 s12, s0, s9
	s_mov_b32 s0, 0
	s_cbranch_vccnz .LBB17_4
; %bb.2:                                ; %.lr.ph.preheader
	v_cvt_f32_u32_e32 v1, s12
	s_sub_i32 s14, 0, s12
	s_ashr_i32 s15, s1, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	s_add_i32 s1, s1, s15
	v_rcp_iflag_f32_e32 v1, v1
	s_xor_b32 s1, s1, s15
	s_xor_b32 s15, s15, s9
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v1, v1
	v_readfirstlane_b32 s3, v1
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s14, s3
	s_mul_hi_u32 s14, s3, s14
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s3, s14
	s_mul_hi_u32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s14, s3, s12
	s_sub_i32 s1, s1, s14
	s_add_i32 s14, s3, 1
	s_sub_i32 s16, s1, s12
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s3, s14, s3
	s_cselect_b32 s1, s16, s1
	s_add_i32 s14, s3, 1
	s_cmp_ge_u32 s1, s12
	s_cselect_b32 s1, s14, s3
	s_mov_b32 s14, s13
	s_xor_b32 s3, s1, s15
	s_mov_b32 s1, 0
	s_sub_i32 s3, s3, s15
.LBB17_3:                               ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	v_dual_mov_b32 v1, s0 :: v_dual_mov_b32 v2, s1
	s_add_i32 s14, s14, -1
	s_add_i32 s1, s1, s3
	s_add_i32 s0, s0, 4
	s_cmp_eq_u32 s14, 0
	ds_store_b32 v1, v2
	s_cbranch_scc0 .LBB17_3
.LBB17_4:                               ; %._crit_edge
	s_cmp_lg_u32 s2, 0
	s_cselect_b32 s0, -1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s0
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB17_6
; %bb.5:
	s_mov_b32 s3, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[2:3], 2
	s_mov_b32 s17, s3
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_add_i32 s16, s2, -1
	s_lshl_b64 s[16:17], s[16:17], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s16, s10, s16
	s_addc_u32 s17, s11, s17
	s_clause 0x1
	s_load_b32 s1, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s14, s1, s14
	s_branch .LBB17_7
.LBB17_6:
	s_mov_b32 s3, -1
                                        ; implicit-def: $sgpr14
.LBB17_7:                               ; %Flow77
	v_cmp_lt_i32_e64 s1, 0, v0
	s_and_not1_b32 vcc_lo, exec_lo, s3
	s_cbranch_vccnz .LBB17_9
; %bb.8:
	s_load_b32 s14, s[10:11], 0x0
.LBB17_9:
	s_delay_alu instid0(VALU_DEP_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB17_12
; %bb.10:                               ; %.lr.ph.i.preheader
	s_mov_b32 s1, 0
	s_mov_b32 s3, s13
.LBB17_11:                              ; %.lr.ph.i
                                        ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v2, s1
	s_add_i32 s3, s3, -1
	s_add_i32 s1, s1, 4
	s_cmp_eq_u32 s3, 0
	ds_load_b32 v0, v2
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v0, s8, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v1, 31, v0
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v0, vcc_lo, s4, v0
	v_add_co_ci_u32_e32 v1, vcc_lo, s5, v1, vcc_lo
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s16, v0
	v_readfirstlane_b32 s17, v1
	s_load_b32 s15, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	v_mov_b32_e32 v0, s15
	ds_store_b32 v2, v0 offset:4000
	s_cbranch_scc0 .LBB17_11
.LBB17_12:                              ; %._crit_edge.i
	s_cmp_lt_i32 s13, 2
	s_mov_b32 s4, 2
	s_cbranch_scc1 .LBB17_19
; %bb.13:                               ; %.preheader.i.i.preheader
	s_mov_b32 s1, 1
	s_mov_b32 s3, 2
	s_movk_i32 s5, 0xfa0
.LBB17_14:                              ; %.preheader.i.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB17_15 Depth 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_mov_b32 s8, s5
	s_mov_b32 s15, s3
.LBB17_15:                              ; %.lr.ph.i.i
                                        ;   Parent Loop BB17_14 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	v_mov_b32_e32 v0, s8
	s_mov_b32 s16, -1
	ds_load_2addr_b32 v[0:1], v0 offset1:1
	s_waitcnt lgkmcnt(0)
	v_cmp_le_i32_e32 vcc_lo, v0, v1
	s_cbranch_vccnz .LBB17_17
; %bb.16:                               ;   in Loop: Header=BB17_15 Depth=2
	s_add_i32 s15, s15, -1
	v_mov_b32_e32 v2, s8
	s_add_i32 s8, s8, -4
	s_cmp_lt_i32 s15, 2
	s_cselect_b32 s16, -1, 0
	ds_store_2addr_b32 v2, v1, v0 offset1:1
.LBB17_17:                              ; %Flow72
                                        ;   in Loop: Header=BB17_15 Depth=2
	s_and_not1_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccnz .LBB17_15
; %bb.18:                               ; %.critedge.i.i
                                        ;   in Loop: Header=BB17_14 Depth=1
	s_add_i32 s1, s1, 1
	s_add_i32 s3, s3, 1
	s_add_i32 s5, s5, 4
	s_cmp_lg_u32 s1, s13
	s_cbranch_scc1 .LBB17_14
.LBB17_19:                              ; %_Z13insertionSortIiEvPT_ii.exit.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB17_21
; %bb.20:
	s_add_i32 s4, s2, -1
	s_mov_b32 s5, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[4:5], s[4:5], 2
	s_add_u32 s4, s10, s4
	s_addc_u32 s5, s11, s5
	s_load_b32 s1, s[4:5], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s4, s1, 2
.LBB17_21:
	s_waitcnt lgkmcnt(0)
	s_cmp_lt_i32 s14, 2
	s_cbranch_scc1 .LBB17_24
; %bb.22:                               ; %.lr.ph43.preheader.i
	s_ashr_i32 s1, s14, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s3, s14, s1
	s_xor_b32 s3, s3, s1
	s_xor_b32 s1, s9, s1
	v_cvt_f32_u32_e32 v0, s3
	s_sub_i32 s8, 0, s3
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_rcp_iflag_f32_e32 v0, v0
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v0, 0x4f7ffffe, v0
	v_cvt_u32_f32_e32 v0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)
	v_readfirstlane_b32 s5, v0
	v_mov_b32_e32 v0, 0
	s_mul_i32 s8, s8, s5
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s8, s5, s8
	s_add_i32 s5, s5, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s5, s12, s5
	s_mul_i32 s8, s5, s3
	s_add_i32 s9, s5, 1
	s_sub_i32 s8, s12, s8
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s12, s8, s3
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s5, s9, s5
	s_cselect_b32 s8, s12, s8
	s_add_i32 s9, s5, 1
	s_cmp_ge_u32 s8, s3
	s_cselect_b32 s3, s9, s5
	s_ashr_i32 s5, s4, 31
	s_xor_b32 s3, s3, s1
	s_lshl_b64 s[4:5], s[4:5], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
	s_add_u32 s4, s6, s4
	s_addc_u32 s5, s7, s5
	s_lshl_b32 s3, s3, 2
	s_lshl_b32 s1, s1, 2
	s_sub_i32 s1, s3, s1
	s_add_i32 s3, s14, -1
	s_add_i32 s8, s1, 0xfa0
.LBB17_23:                              ; %.lr.ph43.i
                                        ; =>This Inner Loop Header: Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	v_mov_b32_e32 v1, s8
	ds_load_b32 v1, v1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v0, v1, s[4:5]
	s_add_u32 s4, s4, 4
	s_addc_u32 s5, s5, 0
	s_add_i32 s3, s3, -1
	s_add_i32 s8, s8, s1
	s_cmp_eq_u32 s3, 0
	s_cbranch_scc0 .LBB17_23
.LBB17_24:                              ; %._crit_edge44.i
	s_mov_b32 vcc_lo, s0
	s_cbranch_vccz .LBB17_26
; %bb.25:
	s_add_i32 s0, s2, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v0, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v0, v0, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v0
	s_add_i32 s0, s0, 1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_ashr_i32 s1, s0, 31
	s_branch .LBB17_27
.LBB17_26:
	s_mov_b64 s[0:1], 0
.LBB17_27:                              ; %_Z12getSplittersIiLi10000EEvPT_S1_PiiiiS2_.exit
	s_delay_alu instid0(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_mov_b32 s3, 0
	v_mov_b32_e32 v0, 0
	s_add_u32 s0, s6, s0
	v_bfrev_b32_e32 v1, 1
	s_addc_u32 s1, s7, s1
	s_lshl_b64 s[2:3], s[2:3], 2
	v_bfrev_b32_e32 v2, -2
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	global_store_b32 v0, v1, s[0:1]
	global_load_b32 v0, v0, s[2:3]
	s_waitcnt vmcnt(0)
	v_ashrrev_i32_e32 v1, 31, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[0:1], 2, v[0:1]
	v_add_co_u32 v0, vcc_lo, s6, v0
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v1, vcc_lo, s7, v1, vcc_lo
	global_store_b32 v[0:1], v2, off
.LBB17_28:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
		.amdhsa_group_segment_fixed_size 8000
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 18
		.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._Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,"axG",@progbits,_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i,comdat
.Lfunc_end17:
	.size	_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i, .Lfunc_end17-_Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1164
; NumSgprs: 20
; NumVgprs: 3
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 8000 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 0
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 3
; 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
	.section	.text._Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,comdat
	.protected	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i ; -- Begin function _Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.globl	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
	.p2align	8
	.type	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,@function
_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i: ; @_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s16, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB18_2
; %bb.1:
	s_lshl_b64 s[2:3], s[12:13], 2
	s_mov_b32 s15, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s2, s10, s2
	s_addc_u32 s3, s11, s3
	s_add_i32 s14, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[14:15], s[14:15], 2
	s_add_u32 s14, s10, s14
	s_addc_u32 s15, s11, s15
	s_clause 0x1
	s_load_b32 s2, s[2:3], 0x0
	s_load_b32 s3, s[14:15], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s18, s2, s3
	s_branch .LBB18_3
.LBB18_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr18
.LBB18_3:                               ; %Flow126
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB18_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s18, s[10:11], 0x0
.LBB18_5:
	s_load_b32 s2, s[0:1], 0x28
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s2
	s_cbranch_scc1 .LBB18_45
; %bb.6:
	s_mov_b32 s2, exec_lo
	v_cmpx_gt_u32_e64 s18, v0
	s_cbranch_execz .LBB18_45
; %bb.7:
	s_load_b64 s[2:3], s[0:1], 0x20
	s_mov_b32 s13, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[14:15], s[12:13], 2
                                        ; implicit-def: $vgpr5
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s8, s14
	s_addc_u32 s1, s9, s15
	s_waitcnt lgkmcnt(0)
	global_store_b32 v1, v1, s[2:3]
	global_load_b64 v[1:2], v1, s[0:1]
	s_ashr_i32 s1, s18, 31
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_add_i32 s0, s18, s1
	s_xor_b32 s13, s0, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
	v_cvt_f32_u32_e32 v3, s13
	s_sub_i32 s20, 0, s13
	v_rcp_iflag_f32_e32 v3, v3
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v3, 0x4f7ffffe, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cvt_u32_f32_e32 v3, v3
	v_readfirstlane_b32 s19, v3
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_i32 s20, s20, s19
	s_mul_hi_u32 s20, s19, s20
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)
	s_add_i32 s19, s19, s20
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s17, v1
	v_readfirstlane_b32 s0, v2
	s_sub_i32 s0, s0, s17
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_ashr_i32 s21, s0, 31
	s_add_i32 s22, s0, s21
	s_xor_b32 s1, s21, s1
	s_xor_b32 s20, s22, s21
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s19, s20, s19
	s_mul_i32 s22, s19, s13
	s_add_i32 s21, s19, 1
	s_sub_i32 s20, s20, s22
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s22, s20, s13
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s19, s21, s19
	s_cselect_b32 s20, s22, s20
	s_add_i32 s21, s19, 1
	s_cmp_ge_u32 s20, s13
	s_cselect_b32 s13, s21, s19
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_xor_b32 s13, s13, s1
	s_sub_i32 s1, s13, s1
	s_add_i32 s13, s18, -1
	v_mul_lo_u32 v6, s1, v0
	v_cmp_ne_u32_e32 vcc_lo, s13, v0
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
	v_add_nc_u32_e32 v1, s17, v6
	s_and_saveexec_b32 s13, vcc_lo
	s_xor_b32 s13, exec_lo, s13
; %bb.8:
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v5, s1, v1
; %bb.9:                                ; %Flow124
	s_and_not1_saveexec_b32 s13, s13
; %bb.10:
	s_mul_i32 s17, s1, s18
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s17
	v_add3_u32 v5, s0, s1, v1
; %bb.11:
	s_or_b32 exec_lo, exec_lo, s13
	s_ashr_i32 s13, s12, 31
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[12:13], 2
	v_cndmask_b32_e64 v4, 0, 1, s16
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_and_not1_b32 vcc_lo, exec_lo, s16
	global_load_b64 v[7:8], v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s13, v7
	v_readfirstlane_b32 s17, v8
	s_cbranch_vccnz .LBB18_13
; %bb.12:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_delay_alu instid0(VALU_DEP_1)
	s_add_i32 s8, s0, 1
	s_branch .LBB18_14
.LBB18_13:
	s_mov_b32 s8, 0
.LBB18_14:
	s_mov_b32 s1, exec_lo
	v_cmpx_lt_i32_e64 v1, v5
	s_cbranch_execz .LBB18_17
; %bb.15:                               ; %.lr.ph.preheader
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v6, 2, v6
	s_mov_b32 s9, 0
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	v_add_co_u32 v2, vcc_lo, s4, v2
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB18_16:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v7, v[2:3], off
	v_add_nc_u32_e32 v1, 1, v1
	v_add_co_u32 v2, vcc_lo, v2, 4
	v_add_co_ci_u32_e32 v3, vcc_lo, 0, v3, vcc_lo
	s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v1, v5
	s_or_b32 s9, s0, s9
	s_waitcnt vmcnt(0)
	ds_store_b32 v6, v7
	v_add_nc_u32_e32 v6, 4, v6
	s_and_not1_b32 exec_lo, exec_lo, s9
	s_cbranch_execnz .LBB18_16
.LBB18_17:                              ; %Flow122
	s_or_b32 exec_lo, exec_lo, s1
	s_cmp_lt_i32 s18, 0
	s_waitcnt lgkmcnt(0)
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	s_cbranch_scc1 .LBB18_20
; %bb.18:                               ; %.lr.ph69.preheader
	s_ashr_i32 s9, s8, 31
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[8:9], 2
	s_add_i32 s18, s8, s18
	s_add_i32 s19, s8, -1
	s_add_u32 s0, s6, s0
	s_addc_u32 s1, s7, s1
	s_mov_b32 s6, 0x9c40
.LBB18_19:                              ; %.lr.ph69
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v2, v1, s[0:1]
	v_mov_b32_e32 v3, s6
	s_add_i32 s19, s19, 1
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s19, s18
	s_waitcnt vmcnt(0)
	ds_store_b32 v3, v2
	s_cbranch_scc0 .LBB18_19
.LBB18_20:                              ; %._crit_edge70
	s_and_b32 vcc_lo, exec_lo, s16
	s_cbranch_vccz .LBB18_22
; %bb.21:
	s_add_u32 s6, s10, s14
	s_addc_u32 s7, s11, s15
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[8:9], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s8, s10, s8
	s_addc_u32 s9, s11, s9
	s_clause 0x1
	global_load_b32 v2, v1, s[6:7]
	global_load_b32 v1, v1, s[8:9]
	s_waitcnt vmcnt(0)
	v_sub_nc_u32_e32 v1, v2, v1
	s_branch .LBB18_23
.LBB18_22:
	s_mov_b32 s1, -1
                                        ; implicit-def: $vgpr1
.LBB18_23:                              ; %Flow117
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s1
	s_cbranch_vccnz .LBB18_25
; %bb.24:
	v_mov_b32_e32 v1, 0
	global_load_b32 v1, v1, s[10:11]
.LBB18_25:
	s_mov_b64 s[0:1], src_private_base
	s_mov_b32 s0, 4
	s_delay_alu instid0(SALU_CYCLE_1)
	v_dual_mov_b32 v3, s1 :: v_dual_mov_b32 v2, s0
	s_waitcnt vmcnt(0)
	flat_store_b32 v[2:3], v1 dlc
	s_waitcnt_vscnt null, 0x0
	flat_load_b32 v1, v[2:3] glc dlc
	s_waitcnt vmcnt(0) lgkmcnt(0)
	v_cmp_lt_u32_e32 vcc_lo, v0, v1
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB18_45
; %bb.26:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	v_mov_b32_e32 v1, v0
	s_cbranch_vccnz .LBB18_28
; %bb.27:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v1, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v1, v1, s[0:1]
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v1, v1, v0
.LBB18_28:
	v_cmp_ne_u32_e32 vcc_lo, 1, v4
	s_cbranch_vccnz .LBB18_30
; %bb.29:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	v_mov_b32_e32 v2, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	global_load_b32 v2, v2, s[0:1]
	s_waitcnt vmcnt(0)
	v_readfirstlane_b32 s0, v2
	s_branch .LBB18_31
.LBB18_30:
	s_mov_b32 s0, 0
.LBB18_31:
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_ashrrev_i32_e32 v2, 31, v1
	v_mov_b32_e32 v3, 0
	s_sub_i32 s1, s17, s13
	s_cmp_lt_i32 s1, 1
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_lshlrev_b64 v[1:2], 2, v[1:2]
	v_add_co_u32 v1, vcc_lo, s2, v1
	s_delay_alu instid0(VALU_DEP_2)
	v_add_co_ci_u32_e32 v2, vcc_lo, s3, v2, vcc_lo
	global_store_b32 v[1:2], v3, off offset:4
	s_cbranch_scc1 .LBB18_38
; %bb.32:                               ; %.lr.ph.i
	v_dual_mov_b32 v6, 0 :: v_dual_lshlrev_b32 v5, 2, v0
	s_mov_b32 s6, 0
	s_mov_b32 s7, 0
	ds_load_b32 v4, v5 offset:40000
	v_add_nc_u32_e32 v5, 0x9c40, v5
.LBB18_33:                              ; =>This Inner Loop Header: Depth=1
	v_mov_b32_e32 v7, s6
	s_mov_b32 s8, exec_lo
	ds_load_b32 v7, v7
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v7, v4
	s_cbranch_execz .LBB18_37
; %bb.34:                               ;   in Loop: Header=BB18_33 Depth=1
	ds_load_b32 v8, v5 offset:4
	s_mov_b32 s9, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_le_i32_e64 v7, v8
	s_cbranch_execz .LBB18_36
; %bb.35:                               ;   in Loop: Header=BB18_33 Depth=1
	v_add_nc_u32_e32 v8, 1, v6
	v_lshl_add_u32 v9, v6, 2, 16
	scratch_store_b32 v9, v7, off
	global_store_b32 v[1:2], v8, off offset:4
	v_mov_b32_e32 v6, v8
.LBB18_36:                              ; %Flow113
                                        ;   in Loop: Header=BB18_33 Depth=1
	s_or_b32 exec_lo, exec_lo, s9
.LBB18_37:                              ;   in Loop: Header=BB18_33 Depth=1
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s8
	s_add_i32 s7, s7, 1
	s_add_i32 s6, s6, 4
	s_cmp_ge_i32 s7, s1
	s_cbranch_scc0 .LBB18_33
.LBB18_38:                              ; %._crit_edge.i
	s_mov_b32 s7, 0
	s_mov_b32 s6, exec_lo
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB18_42
; %bb.39:                               ; %.lr.ph50.i.preheader
	s_ashr_i32 s1, s0, 31
	v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v4, 0
	s_lshl_b64 s[0:1], s[0:1], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s0, s2
	s_addc_u32 s1, s1, s3
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
.LBB18_40:                              ; %.lr.ph50.i
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v5, v4, s[0:1]
	v_add_nc_u32_e32 v0, -1, v0
	s_add_u32 s0, s0, 4
	s_addc_u32 s1, s1, 0
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_eq_u32_e32 vcc_lo, 0, v0
	s_or_b32 s7, vcc_lo, s7
	s_waitcnt vmcnt(0)
	v_add_nc_u32_e32 v3, v5, v3
	s_and_not1_b32 exec_lo, exec_lo, s7
	s_cbranch_execnz .LBB18_40
; %bb.41:                               ; %Flow111
	s_or_b32 exec_lo, exec_lo, s7
.LBB18_42:                              ; %Flow112
	s_delay_alu instid0(SALU_CYCLE_1)
	s_or_b32 exec_lo, exec_lo, s6
	global_load_b32 v0, v[1:2], off offset:4
	s_mov_b32 s0, 0
	s_waitcnt vmcnt(0)
	v_cmp_lt_i32_e32 vcc_lo, 0, v0
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB18_45
; %bb.43:                               ; %.lr.ph52.i
	v_dual_mov_b32 v3, 16 :: v_dual_add_nc_u32 v0, s13, v3
	s_mov_b32 s1, 0
.LBB18_44:                              ; =>This Inner Loop Header: Depth=1
	scratch_load_b32 v6, v3, off
	v_add_nc_u32_e32 v4, s1, v0
	s_add_i32 s1, s1, 1
	v_add_nc_u32_e32 v3, 4, v3
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_ashrrev_i32_e32 v5, 31, v4
	v_lshlrev_b64 v[4:5], 2, v[4:5]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v4, vcc_lo, s4, v4
	v_add_co_ci_u32_e32 v5, vcc_lo, s5, v5, vcc_lo
	s_waitcnt vmcnt(0)
	global_store_b32 v[4:5], v6, off
	global_load_b32 v4, v[1:2], off offset:4
	s_waitcnt vmcnt(0)
	v_cmp_ge_i32_e32 vcc_lo, s1, v4
	s_or_b32 s0, vcc_lo, s0
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s0
	s_cbranch_execnz .LBB18_44
.LBB18_45:
	s_nop 0
	s_sendmsg sendmsg(MSG_DEALLOC_VGPRS)
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 42008
		.amdhsa_private_segment_fixed_size 40016
		.amdhsa_kernarg_size 44
		.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 1
		.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 10
		.amdhsa_next_free_sgpr 23
		.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._Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,"axG",@progbits,_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i,comdat
.Lfunc_end18:
	.size	_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i, .Lfunc_end18-_Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1580
; NumSgprs: 25
; NumVgprs: 10
; ScratchSize: 40016
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 42008 bytes/workgroup (compile time only)
; SGPRBlocks: 3
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 25
; NumVGPRsForWavesPerEU: 10
; Occupancy: 16
; WaveLimiterHint : 1
; COMPUTE_PGM_RSRC2:SCRATCH_EN: 1
; 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._Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,comdat
	.protected	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i ; -- Begin function _Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.globl	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
	.p2align	8
	.type	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,@function
_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i: ; @_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
; %bb.0:
	s_load_b256 s[4:11], s[0:1], 0x0
	s_cmp_lg_u32 s15, 0
	s_mov_b32 s12, s15
	s_cselect_b32 s2, -1, 0
	s_mov_b32 s13, 0
	s_and_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccz .LBB19_2
; %bb.1:
	s_lshl_b64 s[14:15], s[12:13], 2
	s_mov_b32 s17, s13
	s_waitcnt lgkmcnt(0)
	s_add_u32 s14, s8, s14
	s_addc_u32 s15, s9, s15
	s_add_i32 s16, s12, -1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[16:17], s[16:17], 2
	s_add_u32 s16, s8, s16
	s_addc_u32 s17, s9, s17
	s_clause 0x1
	s_load_b32 s3, s[14:15], 0x0
	s_load_b32 s14, s[16:17], 0x0
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s3, s3, s14
	s_branch .LBB19_3
.LBB19_2:
	s_mov_b32 s13, -1
                                        ; implicit-def: $sgpr3
.LBB19_3:                               ; %Flow120
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 vcc_lo, exec_lo, s13
	s_cbranch_vccnz .LBB19_5
; %bb.4:
	s_waitcnt lgkmcnt(0)
	s_load_b32 s3, s[8:9], 0x0
.LBB19_5:
	s_load_b32 s0, s[0:1], 0x20
	s_waitcnt lgkmcnt(0)
	s_cmp_ge_u32 s12, s0
	s_cbranch_scc1 .LBB19_34
; %bb.6:
	s_mov_b32 s0, exec_lo
	v_cmpx_gt_u32_e64 s3, v0
	s_cbranch_execz .LBB19_34
; %bb.7:
	v_cndmask_b32_e64 v1, 0, 1, s2
	v_mov_b32_e32 v3, v0
	s_and_not1_b32 vcc_lo, exec_lo, s2
	s_cbranch_vccnz .LBB19_9
; %bb.8:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s0, s[0:1], 0x0
	s_waitcnt lgkmcnt(0)
	v_add_nc_u32_e32 v3, s0, v0
.LBB19_9:
	s_delay_alu instid0(VALU_DEP_2)
	v_cmp_ne_u32_e32 vcc_lo, 1, v1
	s_mov_b32 s13, 0
	s_mov_b32 s2, 0
	s_cbranch_vccnz .LBB19_11
; %bb.10:
	s_add_i32 s0, s12, -1
	s_mov_b32 s1, 0
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_lshl_b64 s[0:1], s[0:1], 2
	s_add_u32 s0, s8, s0
	s_addc_u32 s1, s9, s1
	s_load_b32 s2, s[0:1], 0x0
.LBB19_11:
	s_lshl_b64 s[0:1], s[12:13], 2
                                        ; implicit-def: $vgpr6
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	s_add_u32 s0, s10, s0
	s_addc_u32 s1, s11, s1
	s_ashr_i32 s10, s3, 31
	s_add_i32 s8, s3, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_xor_b32 s11, s8, s10
	s_load_b64 s[8:9], s[0:1], 0x0
	v_cvt_f32_u32_e32 v1, s11
	v_rcp_iflag_f32_e32 v1, v1
	s_waitcnt_depctr 0xfff
	v_mul_f32_e32 v1, 0x4f7ffffe, v1
	s_waitcnt lgkmcnt(0)
	s_sub_i32 s0, s9, s8
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
	v_cvt_u32_f32_e32 v1, v1
	s_sub_i32 s9, 0, s11
	s_ashr_i32 s12, s0, 31
	s_add_i32 s13, s0, s12
	s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_readfirstlane_b32 s1, v1
	s_xor_b32 s13, s13, s12
	s_xor_b32 s10, s12, s10
	s_mul_i32 s9, s9, s1
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s9, s1, s9
	s_add_i32 s1, s1, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_mul_hi_u32 s1, s13, s1
	s_mul_i32 s9, s1, s11
	s_add_i32 s12, s1, 1
	s_sub_i32 s9, s13, s9
	s_delay_alu instid0(SALU_CYCLE_1)
	s_sub_i32 s13, s9, s11
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_cselect_b32 s9, s13, s9
	s_add_i32 s12, s1, 1
	s_cmp_ge_u32 s9, s11
	s_cselect_b32 s1, s12, s1
	s_add_i32 s9, s3, -1
	s_xor_b32 s1, s1, s10
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s1, s1, s10
	v_mul_lo_u32 v4, s1, v0
	s_delay_alu instid0(VALU_DEP_1)
	v_add_nc_u32_e32 v1, s8, v4
	s_mov_b32 s8, exec_lo
	v_cmpx_ne_u32_e64 s9, v0
	s_xor_b32 s8, exec_lo, s8
; %bb.12:
	s_delay_alu instid0(VALU_DEP_2)
	v_add_nc_u32_e32 v6, s1, v1
; %bb.13:                               ; %Flow118
	s_and_not1_saveexec_b32 s8, s8
; %bb.14:
	s_mul_i32 s3, s1, s3
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_sub_i32 s0, s0, s3
	v_add3_u32 v6, s0, s1, v1
; %bb.15:
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(VALU_DEP_1)
	v_cmp_lt_i32_e32 vcc_lo, v1, v6
	v_ashrrev_i32_e32 v2, 31, v1
	v_lshlrev_b32_e32 v7, 2, v4
	s_and_saveexec_b32 s3, vcc_lo
	s_cbranch_execz .LBB19_18
; %bb.16:                               ; %.lr.ph.preheader
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_2) | instid1(VALU_DEP_2)
	v_lshlrev_b64 v[9:10], 2, v[1:2]
	v_lshlrev_b32_e32 v8, 2, v4
	s_mov_b32 s8, 0
	v_add_co_u32 v4, s0, s4, v9
	v_mov_b32_e32 v9, v1
	s_delay_alu instid0(VALU_DEP_4)
	v_add_co_ci_u32_e64 v5, s0, s5, v10, s0
.LBB19_17:                              ; %.lr.ph
                                        ; =>This Inner Loop Header: Depth=1
	global_load_b32 v10, v[4:5], off
	v_add_nc_u32_e32 v9, 1, v9
	v_add_co_u32 v4, s0, v4, 4
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_3)
	v_add_co_ci_u32_e64 v5, s0, 0, v5, s0
	v_cmp_ge_i32_e64 s1, v9, v6
	s_delay_alu instid0(VALU_DEP_1)
	s_or_b32 s8, s1, s8
	s_waitcnt vmcnt(0)
	ds_store_b32 v8, v10
	v_add_nc_u32_e32 v8, 4, v8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB19_17
.LBB19_18:                              ; %Flow117
	s_or_b32 exec_lo, exec_lo, s3
	v_mov_b32_e32 v5, 0
	s_mov_b32 s8, 0
	s_mov_b32 s1, exec_lo
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	v_cmpx_ne_u32_e32 0, v0
	s_cbranch_execz .LBB19_22
; %bb.19:                               ; %.lr.ph68.preheader
	s_ashr_i32 s3, s2, 31
	s_mov_b32 s9, 0
	s_lshl_b64 s[2:3], s[2:3], 2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_add_u32 s0, s2, s6
	s_addc_u32 s3, s3, s7
	s_add_u32 s2, s0, 4
	s_addc_u32 s3, s3, 0
.LBB19_20:                              ; %.lr.ph68
                                        ; =>This Inner Loop Header: Depth=1
	s_load_b32 s10, s[2:3], 0x0
	s_waitcnt lgkmcnt(0)
	s_add_i32 s9, s10, s9
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	v_dual_mov_b32 v5, s9 :: v_dual_add_nc_u32 v0, -1, v0
	s_add_u32 s2, s2, 4
	s_addc_u32 s3, s3, 0
	v_cmp_eq_u32_e64 s0, 0, v0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_or_b32 s8, s0, s8
	s_and_not1_b32 exec_lo, exec_lo, s8
	s_cbranch_execnz .LBB19_20
; %bb.21:                               ; %Flow114
	s_or_b32 exec_lo, exec_lo, s8
.LBB19_22:                              ; %Flow115
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)
	s_or_b32 exec_lo, exec_lo, s1
	v_ashrrev_i32_e32 v4, 31, v3
	s_mov_b32 s1, exec_lo
	v_lshlrev_b64 v[3:4], 2, v[3:4]
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_add_co_u32 v3, s0, s6, v3
	v_add_co_ci_u32_e64 v4, s0, s7, v4, s0
	global_load_b32 v0, v[3:4], off offset:4
	s_waitcnt vmcnt(0)
	v_cmpx_lt_i32_e32 1, v0
	s_cbranch_execz .LBB19_30
; %bb.23:                               ; %.preheader.i.preheader
	v_add_nc_u32_e32 v0, v0, v5
	v_add_nc_u32_e32 v8, 1, v5
	v_lshlrev_b32_e32 v9, 2, v5
	s_mov_b32 s2, 0
.LBB19_24:                              ; %.preheader.i
                                        ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB19_26 Depth 2
	s_mov_b32 s3, exec_lo
	s_delay_alu instid0(VALU_DEP_2)
	v_cmpx_gt_i32_e64 v8, v5
	s_cbranch_execz .LBB19_29
; %bb.25:                               ; %.lr.ph.i.preheader
                                        ;   in Loop: Header=BB19_24 Depth=1
	v_dual_mov_b32 v10, v9 :: v_dual_mov_b32 v11, v8
	s_mov_b32 s6, 0
                                        ; implicit-def: $sgpr7
.LBB19_26:                              ; %.lr.ph.i
                                        ;   Parent Loop BB19_24 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ds_load_2addr_b32 v[3:4], v10 offset1:1
	s_or_b32 s7, s7, exec_lo
	s_mov_b32 s8, exec_lo
	s_waitcnt lgkmcnt(0)
	v_cmpx_gt_i32_e64 v3, v4
	s_cbranch_execz .LBB19_28
; %bb.27:                               ;   in Loop: Header=BB19_26 Depth=2
	v_add_nc_u32_e32 v11, -1, v11
	ds_store_2addr_b32 v10, v4, v3 offset1:1
	v_add_nc_u32_e32 v10, -4, v10
	s_and_not1_b32 s7, s7, exec_lo
	v_cmp_le_i32_e64 s0, v11, v5
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, s0, exec_lo
	s_or_b32 s7, s7, s0
.LBB19_28:                              ; %Flow109
                                        ;   in Loop: Header=BB19_26 Depth=2
	s_or_b32 exec_lo, exec_lo, s8
	s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
	s_and_b32 s0, exec_lo, s7
	s_or_b32 s6, s0, s6
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s6
	s_cbranch_execnz .LBB19_26
.LBB19_29:                              ; %Flow111
                                        ;   in Loop: Header=BB19_24 Depth=1
	s_or_b32 exec_lo, exec_lo, s3
	v_add_nc_u32_e32 v8, 1, v8
	v_add_nc_u32_e32 v9, 4, v9
	s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e64 s0, v8, v0
	s_or_b32 s2, s0, s2
	s_delay_alu instid0(SALU_CYCLE_1)
	s_and_not1_b32 exec_lo, exec_lo, s2
	s_cbranch_execnz .LBB19_24
.LBB19_30:                              ; %Flow113
	s_or_b32 exec_lo, exec_lo, s1
	s_waitcnt lgkmcnt(0)
	s_barrier
	buffer_gl0_inv
	s_and_b32 exec_lo, exec_lo, vcc_lo
	s_cbranch_execz .LBB19_33
; %bb.31:                               ; %.lr.ph72.preheader
	v_lshlrev_b64 v[2:3], 2, v[1:2]
	s_mov_b32 s1, 0
	s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
	v_add_co_u32 v2, vcc_lo, s4, v2
	v_add_co_ci_u32_e32 v3, vcc_lo, s5, v3, vcc_lo
.LBB19_32:                              ; %.lr.ph72
                                        ; =>This Inner Loop Header: Depth=1
	ds_load_b32 v0, v7
	v_add_nc_u32_e32 v1, 1, v1
	v_add_nc_u32_e32 v7, 4, v7
	s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_4) | instid1(VALU_DEP_1)
	v_cmp_ge_i32_e32 vcc_lo, v1, v6
	s_or_b32 s1, vcc_lo, s1
	s_waitcnt lgkmcnt(0)
	global_store_b32 v[2:3], v0, off
	v_add_co_u32 v2, s0, v2, 4
	v_add_co_ci_u32_e64 v3, s0, 0, v3, s0
	s_and_not1_b32 exec_lo, exec_lo, s1
	s_cbranch_execnz .LBB19_32
.LBB19_33:                              ; %._crit_edge73
	s_waitcnt_vscnt null, 0x0
	s_barrier
	buffer_gl0_inv
.LBB19_34:
	s_endpgm
	.section	.rodata,"a",@progbits
	.p2align	6, 0x0
	.amdhsa_kernel _Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
		.amdhsa_group_segment_fixed_size 40000
		.amdhsa_private_segment_fixed_size 0
		.amdhsa_kernarg_size 36
		.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 12
		.amdhsa_next_free_sgpr 18
		.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._Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,"axG",@progbits,_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i,comdat
.Lfunc_end19:
	.size	_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i, .Lfunc_end19-_Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
                                        ; -- End function
	.section	.AMDGPU.csdata,"",@progbits
; Kernel info:
; codeLenInByte = 1204
; NumSgprs: 20
; NumVgprs: 12
; ScratchSize: 0
; MemoryBound: 0
; FloatMode: 240
; IeeeMode: 1
; LDSByteSize: 40000 bytes/workgroup (compile time only)
; SGPRBlocks: 2
; VGPRBlocks: 1
; NumSGPRsForWavesPerEU: 20
; NumVGPRsForWavesPerEU: 12
; 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
      - .address_space:  global
        .offset:         8
        .size:           8
        .value_kind:     global_buffer
      - .offset:         16
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 20
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z15getNumOfBucketsPiS_i
    .private_segment_fixed_size: 0
    .sgpr_count:     16
    .sgpr_spill_count: 0
    .symbol:         _Z15getNumOfBucketsPiS_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     2
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .offset:         8
        .size:           4
        .value_kind:     by_value
      - .offset:         12
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .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: 256
    .name:           _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb1ELb1EEEEEvT_jjPNS4_10value_typeE.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:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .offset:         8
        .size:           4
        .value_kind:     by_value
      - .offset:         12
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .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: 256
    .name:           _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail31init_lookback_scan_state_kernelINS0_19lookback_scan_stateIiLb0ELb1EEEEEvT_jjPNS4_10value_typeE.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:
      - .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:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     by_value
      - .offset:         28
        .size:           1
        .value_kind:     by_value
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         48
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         56
        .size:           8
        .value_kind:     global_buffer
      - .offset:         64
        .size:           1
        .value_kind:     by_value
      - .offset:         65
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 68
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
    .private_segment_fixed_size: 0
    .sgpr_count:     0
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     0
    .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
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     by_value
      - .offset:         28
        .size:           1
        .value_kind:     by_value
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         48
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         56
        .size:           8
        .value_kind:     global_buffer
      - .offset:         64
        .size:           1
        .value_kind:     by_value
      - .offset:         65
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 16896
    .kernarg_segment_align: 8
    .kernarg_segment_size: 68
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
    .private_segment_fixed_size: 0
    .sgpr_count:     37
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     44
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .offset:         8
        .size:           8
        .value_kind:     by_value
      - .address_space:  global
        .offset:         16
        .size:           8
        .value_kind:     global_buffer
      - .offset:         24
        .size:           1
        .value_kind:     by_value
      - .offset:         32
        .size:           4
        .value_kind:     hidden_block_count_x
      - .offset:         36
        .size:           4
        .value_kind:     hidden_block_count_y
      - .offset:         40
        .size:           4
        .value_kind:     hidden_block_count_z
      - .offset:         44
        .size:           2
        .value_kind:     hidden_group_size_x
      - .offset:         46
        .size:           2
        .value_kind:     hidden_group_size_y
      - .offset:         48
        .size:           2
        .value_kind:     hidden_group_size_z
      - .offset:         50
        .size:           2
        .value_kind:     hidden_remainder_x
      - .offset:         52
        .size:           2
        .value_kind:     hidden_remainder_y
      - .offset:         54
        .size:           2
        .value_kind:     hidden_remainder_z
      - .offset:         72
        .size:           8
        .value_kind:     hidden_global_offset_x
      - .offset:         80
        .size:           8
        .value_kind:     hidden_global_offset_y
      - .offset:         88
        .size:           8
        .value_kind:     hidden_global_offset_z
      - .offset:         96
        .size:           2
        .value_kind:     hidden_grid_dims
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 288
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_
    .private_segment_fixed_size: 0
    .sgpr_count:     24
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail16transform_kernelINS0_24wrapped_transform_configINS_14default_configEiEEiPiS5_NS_8identityIiEEEEvT1_mT2_T3_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     28
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .offset:         8
        .size:           8
        .value_kind:     by_value
      - .offset:         16
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .offset:         32
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 16896
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
    .private_segment_fixed_size: 0
    .sgpr_count:     26
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail18single_scan_kernelILb1ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     35
    .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_ptrIiEEiEEmLj1EEEvT0_T1_S9_
    .private_segment_fixed_size: 0
    .sgpr_count:     18
    .sgpr_spill_count: 0
    .symbol:         _ZN6thrust11hip_rocprim14__parallel_for6kernelILj256ENS0_20__uninitialized_fill7functorINS_10device_ptrIiEEiEEmLj1EEEvT0_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:
      - .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:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     by_value
      - .offset:         28
        .size:           1
        .value_kind:     by_value
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         48
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         56
        .size:           8
        .value_kind:     global_buffer
      - .offset:         64
        .size:           1
        .value_kind:     by_value
      - .offset:         65
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 0
    .kernarg_segment_align: 8
    .kernarg_segment_size: 68
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
    .private_segment_fixed_size: 0
    .sgpr_count:     0
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb1ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     0
    .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
      - .offset:         16
        .size:           8
        .value_kind:     by_value
      - .offset:         24
        .size:           4
        .value_kind:     by_value
      - .offset:         28
        .size:           1
        .value_kind:     by_value
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         48
        .size:           8
        .value_kind:     global_buffer
      - .address_space:  global
        .offset:         56
        .size:           8
        .value_kind:     global_buffer
      - .offset:         64
        .size:           1
        .value_kind:     by_value
      - .offset:         65
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 16896
    .kernarg_segment_align: 8
    .kernarg_segment_size: 68
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb
    .private_segment_fixed_size: 0
    .sgpr_count:     37
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail20lookback_scan_kernelILNS0_25lookback_scan_determinismE0ELb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES8_NS6_4plusIvEEiiNS0_19lookback_scan_stateIiLb0ELb1EEEEEvT2_T3_mT5_T4_T7_jPT6_SJ_bb.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     43
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
  - .args:
      - .address_space:  global
        .offset:         0
        .size:           8
        .value_kind:     global_buffer
      - .offset:         8
        .size:           8
        .value_kind:     by_value
      - .offset:         16
        .size:           4
        .value_kind:     by_value
      - .address_space:  global
        .offset:         24
        .size:           8
        .value_kind:     global_buffer
      - .offset:         32
        .size:           1
        .value_kind:     by_value
    .group_segment_fixed_size: 16896
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 256
    .name:           _ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_
    .private_segment_fixed_size: 0
    .sgpr_count:     26
    .sgpr_spill_count: 0
    .symbol:         _ZN7rocprim6detail18single_scan_kernelILb0ENS0_19wrapped_scan_configINS_14default_configEiEEN6thrust10device_ptrIiEES7_NS5_4plusIvEEiiEEvT1_mT4_T2_T3_.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     25
    .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
    .group_segment_fixed_size: 88
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11splitterKerIiLi100EEvPT_S1_PiS2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11splitterKerIiLi100EEvPT_S1_PiS2_i.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:
      - .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
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 428
    .kernarg_segment_align: 8
    .kernarg_segment_size: 44
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i
    .private_segment_fixed_size: 416
    .sgpr_count:     25
    .sgpr_spill_count: 0
    .symbol:         _Z12bucketKernelIiLi100EEvPT_S1_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     10
    .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
    .group_segment_fixed_size: 400
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11sortBucketsIiLi100EEvPT_PiS2_S2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11sortBucketsIiLi100EEvPT_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     12
    .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
    .group_segment_fixed_size: 800
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11splitterKerIiLi1000EEvPT_S1_PiS2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11splitterKerIiLi1000EEvPT_S1_PiS2_i.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:
      - .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
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 4208
    .kernarg_segment_align: 8
    .kernarg_segment_size: 44
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i
    .private_segment_fixed_size: 4016
    .sgpr_count:     25
    .sgpr_spill_count: 0
    .symbol:         _Z12bucketKernelIiLi1000EEvPT_S1_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     10
    .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
    .group_segment_fixed_size: 4000
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11sortBucketsIiLi1000EEvPT_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     12
    .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
    .group_segment_fixed_size: 8000
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11splitterKerIiLi10000EEvPT_S1_PiS2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11splitterKerIiLi10000EEvPT_S1_PiS2_i.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:
      - .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
      - .address_space:  global
        .offset:         32
        .size:           8
        .value_kind:     global_buffer
      - .offset:         40
        .size:           4
        .value_kind:     by_value
    .group_segment_fixed_size: 42008
    .kernarg_segment_align: 8
    .kernarg_segment_size: 44
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i
    .private_segment_fixed_size: 40016
    .sgpr_count:     25
    .sgpr_spill_count: 0
    .symbol:         _Z12bucketKernelIiLi10000EEvPT_S1_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     10
    .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
    .group_segment_fixed_size: 40000
    .kernarg_segment_align: 8
    .kernarg_segment_size: 36
    .language:       OpenCL C
    .language_version:
      - 2
      - 0
    .max_flat_workgroup_size: 1024
    .name:           _Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i
    .private_segment_fixed_size: 0
    .sgpr_count:     20
    .sgpr_spill_count: 0
    .symbol:         _Z11sortBucketsIiLi10000EEvPT_PiS2_S2_i.kd
    .uniform_work_group_size: 1
    .uses_dynamic_stack: false
    .vgpr_count:     12
    .vgpr_spill_count: 0
    .wavefront_size: 32
    .workgroup_processor_mode: 1
amdhsa.target:   amdgcn-amd-amdhsa--gfx1100
amdhsa.version:
  - 1
  - 2
...

	.end_amdgpu_metadata
