]> git.proxmox.com Git - rustc.git/blame - vendor/rustc-ap-rustc_target/src/abi/call/powerpc.rs
New upstream version 1.52.1+dfsg1
[rustc.git] / vendor / rustc-ap-rustc_target / src / abi / call / powerpc.rs
CommitLineData
f20569fa
XL
1use crate::abi::call::{ArgAbi, FnAbi};
2
3fn classify_ret<Ty>(ret: &mut ArgAbi<'_, Ty>) {
4 if ret.layout.is_aggregate() {
5 ret.make_indirect();
6 } else {
7 ret.extend_integer_width_to(32);
8 }
9}
10
11fn classify_arg<Ty>(arg: &mut ArgAbi<'_, Ty>) {
12 if arg.layout.is_aggregate() {
13 arg.make_indirect();
14 } else {
15 arg.extend_integer_width_to(32);
16 }
17}
18
19pub fn compute_abi_info<Ty>(fn_abi: &mut FnAbi<'_, Ty>) {
20 if !fn_abi.ret.is_ignore() {
21 classify_ret(&mut fn_abi.ret);
22 }
23
24 for arg in &mut fn_abi.args {
25 if arg.is_ignore() {
26 continue;
27 }
28 classify_arg(arg);
29 }
30}