1 //===---- PPCCCState.cpp - CCState with PowerPC specific extensions ---------===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #include "PPCCCState.h" 11 #include "PPCSubtarget.h" 12 #include "llvm/IR/Module.h" 13 using namespace llvm; 14 15 // Identify lowered values that originated from ppcf128 arguments and record 16 // this. PreAnalyzeCallOperands(const SmallVectorImpl<ISD::OutputArg> & Outs)17void PPCCCState::PreAnalyzeCallOperands( 18 const SmallVectorImpl<ISD::OutputArg> &Outs) { 19 for (const auto &I : Outs) { 20 if (I.ArgVT == llvm::MVT::ppcf128) 21 OriginalArgWasPPCF128.push_back(true); 22 else 23 OriginalArgWasPPCF128.push_back(false); 24 } 25 } 26 PreAnalyzeFormalArguments(const SmallVectorImpl<ISD::InputArg> & Ins)27void PPCCCState::PreAnalyzeFormalArguments( 28 const SmallVectorImpl<ISD::InputArg> &Ins) { 29 for (const auto &I : Ins) { 30 if (I.ArgVT == llvm::MVT::ppcf128) { 31 OriginalArgWasPPCF128.push_back(true); 32 } else { 33 OriginalArgWasPPCF128.push_back(false); 34 } 35 } 36 }