]> git.proxmox.com Git - rustc.git/blame_incremental - src/librustc_target/abi/call/powerpc.rs
New upstream version 1.41.1+dfsg1
[rustc.git] / src / librustc_target / abi / call / powerpc.rs
... / ...
CommitLineData
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() { continue; }
26 classify_arg(arg);
27 }
28}