1; fcfid and fctid should be generated when the 64bit feature is enabled, but not
2; otherwise.
3
4; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mattr=+64bit | \
5; RUN:   grep fcfid
6; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mattr=+64bit | \
7; RUN:   grep fctidz
8; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mcpu=g5 | \
9; RUN:   grep fcfid
10; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mcpu=g5 | \
11; RUN:   grep fctidz
12; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mattr=-64bit | \
13; RUN:   not grep fcfid
14; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mattr=-64bit | \
15; RUN:   not grep fctidz
16; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mcpu=g4 | \
17; RUN:   not grep fcfid
18; RUN: llc -verify-machineinstrs < %s -mattr=-vsx -mtriple=ppc32-- -mcpu=g4 | \
19; RUN:   not grep fctidz
20
21define double @X(double %Y) {
22        %A = fptosi double %Y to i64            ; <i64> [#uses=1]
23        %B = sitofp i64 %A to double            ; <double> [#uses=1]
24        ret double %B
25}
26
27