1//===---- PPCCCState.cpp - CCState with PowerPC specific extensions ---------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "PPCCCState.h"
10using namespace llvm;
11
12// Identify lowered values that originated from ppcf128 arguments and record
13// this.
14void PPCCCState::PreAnalyzeCallOperands(
15 const SmallVectorImpl<ISD::OutputArg> &Outs) {
16 for (const auto &I : Outs) {
17 if (I.ArgVT == llvm::MVT::ppcf128)
18 OriginalArgWasPPCF128.push_back(Elt: true);
19 else
20 OriginalArgWasPPCF128.push_back(Elt: false);
21 }
22}
23
24void PPCCCState::PreAnalyzeFormalArguments(
25 const SmallVectorImpl<ISD::InputArg> &Ins) {
26 for (const auto &I : Ins) {
27 if (I.ArgVT == llvm::MVT::ppcf128) {
28 OriginalArgWasPPCF128.push_back(Elt: true);
29 } else {
30 OriginalArgWasPPCF128.push_back(Elt: false);
31 }
32 }
33}
34