mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-01 16:33:37 +01:00
bb07cd38e3
std::pair<double, float*> is 16 bytes on darwin-powerpc, but not always. See testcase for full weirdness. llvm-svn: 73874
33 lines
1.3 KiB
C++
33 lines
1.3 KiB
C++
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep baz | grep global | grep {struct.bar}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep ccc | grep global | grep {struct.CC}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep quux | grep global | grep {struct.bar}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep foo | grep global | grep {struct.SRCFilter::FilterEntry}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep {struct.bar} | grep {1 x i32}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep {struct.CC} | grep {struct.bar}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep {struct.bar} | grep {1 x i32}
|
|
// RUN: %llvmgxx -S -m32 -emit-llvm %s -o - | grep {struct.SRCFilter::FilterEntry} | not grep {1 x i32}
|
|
// XFAIL: *
|
|
// XTARGET: powerpc-apple-darwin
|
|
|
|
template<class _T1, class _T2> struct payre {
|
|
_T1 first;
|
|
_T2 second;
|
|
payre() : first(), second() { }
|
|
};
|
|
struct KBFP {
|
|
double mCutoffFrequency;
|
|
};
|
|
class SRCFilter {
|
|
struct FilterEntry: public payre<KBFP, float*>{};
|
|
static FilterEntry foo;
|
|
};
|
|
SRCFilter::FilterEntry SRCFilter::foo; // 12 bytes
|
|
payre<KBFP, float*> baz; // 16 bytes
|
|
class CC { // 16 bytes
|
|
public: payre<KBFP, float*> x;
|
|
};
|
|
class CC ccc;
|
|
|
|
struct bar { KBFP x; float* y;}; // 16 bytes
|
|
struct bar quux;
|