@@ -1555,22 +1555,24 @@ void CodeGenModule::GenOpenCLArgMetadata(llvm::Function *Fn,
1555
1555
: llvm::ConstantAsMetadata::get (CGF->Builder .getInt32 (-1 )));
1556
1556
}
1557
1557
1558
- Fn->setMetadata (" kernel_arg_addr_space" ,
1559
- llvm::MDNode::get (VMContext, addressQuals));
1560
- Fn->setMetadata (" kernel_arg_access_qual" ,
1561
- llvm::MDNode::get (VMContext, accessQuals));
1562
- Fn->setMetadata (" kernel_arg_type" ,
1563
- llvm::MDNode::get (VMContext, argTypeNames));
1564
- Fn->setMetadata (" kernel_arg_base_type" ,
1565
- llvm::MDNode::get (VMContext, argBaseTypeNames));
1566
- Fn->setMetadata (" kernel_arg_type_qual" ,
1567
- llvm::MDNode::get (VMContext, argTypeQuals));
1568
- if (getCodeGenOpts ().EmitOpenCLArgMetadata )
1569
- Fn->setMetadata (" kernel_arg_name" ,
1570
- llvm::MDNode::get (VMContext, argNames));
1571
- if (LangOpts.SYCLIsDevice )
1558
+ if (LangOpts.SYCLIsDevice && !LangOpts.SYCLExplicitSIMD )
1572
1559
Fn->setMetadata (" kernel_arg_buffer_location" ,
1573
1560
llvm::MDNode::get (VMContext, argSYCLBufferLocationAttr));
1561
+ else {
1562
+ Fn->setMetadata (" kernel_arg_addr_space" ,
1563
+ llvm::MDNode::get (VMContext, addressQuals));
1564
+ Fn->setMetadata (" kernel_arg_access_qual" ,
1565
+ llvm::MDNode::get (VMContext, accessQuals));
1566
+ Fn->setMetadata (" kernel_arg_type" ,
1567
+ llvm::MDNode::get (VMContext, argTypeNames));
1568
+ Fn->setMetadata (" kernel_arg_base_type" ,
1569
+ llvm::MDNode::get (VMContext, argBaseTypeNames));
1570
+ Fn->setMetadata (" kernel_arg_type_qual" ,
1571
+ llvm::MDNode::get (VMContext, argTypeQuals));
1572
+ if (getCodeGenOpts ().EmitOpenCLArgMetadata )
1573
+ Fn->setMetadata (" kernel_arg_name" ,
1574
+ llvm::MDNode::get (VMContext, argNames));
1575
+ }
1574
1576
}
1575
1577
1576
1578
// / Determines whether the language options require us to model
0 commit comments