Chromium Code Reviews| Index: crosstest/test_calling_conv.h |
| diff --git a/crosstest/test_calling_conv.h b/crosstest/test_calling_conv.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..5696a0efcd3bf2402218d24c33f55b5613daec6c |
| --- /dev/null |
| +++ b/crosstest/test_calling_conv.h |
| @@ -0,0 +1,69 @@ |
| +//===- subzero/crosstest/test_calling_conv.h - Test prototypes --*- C++ -*-===// |
| +// |
| +// The Subzero Code Generator |
| +// |
| +// This file is distributed under the University of Illinois Open Source |
| +// License. See LICENSE.TXT for details. |
| +// |
| +//===----------------------------------------------------------------------===// |
| +// |
| +// This file declares the function prototypes for crosstesting the calling |
| +// convention |
|
Jim Stichnoth
2014/08/05 18:09:26
Period at the end of the sentence?
wala
2014/08/05 23:57:02
Done.
|
| +// |
| +//===----------------------------------------------------------------------===// |
| + |
| +#ifndef TEST_CALLING_CONV_H |
| +#define TEST_CALLING_CONV_H |
| + |
| +#include "test_calling_conv.def" |
|
Jim Stichnoth
2014/08/05 18:09:26
I think you forgot to "git add" this file.
wala
2014/08/05 23:57:02
Woops, done.
|
| + |
| +#include <stdint.h> |
| + |
| +typedef int v4si32 __attribute__((vector_size(16))); |
|
Jim Stichnoth
2014/08/05 18:09:26
Consider #including vectors.h instead?
wala
2014/08/05 23:57:02
Done.
|
| +typedef float v4f32 __attribute__((vector_size(16))); |
| + |
| +#ifdef __cplusplus |
| +extern "C" { |
| +#endif |
| + |
| +typedef void (*CalleePtrTy)(void); |
| +extern CalleePtrTy Callee; |
| +extern size_t DynAllocaSize; |
| +extern size_t ArgNum; |
| +extern char *Buf; |
| + |
| +void fakeUse(void *); |
| + |
| +void caller_i(void); |
| +void caller_alloca_16_i(void); |
| +void caller_alloca_17_i(void); |
| +void caller_alloca_vla_i(void); |
| +void Subzero_caller_i(void); |
| +void Subzero_caller_alloca_16_i(void); |
| +void Subzero_caller_alloca_17_i(void); |
| +void Subzero_caller_alloca_vla_i(void); |
| + |
| +typedef void callee_i_Ty(int); |
| +callee_i_Ty callee_i, Subzero_callee_i; |
| +callee_i_Ty callee_alloca_16_i, Subzero_callee_alloca_16_i; |
| +callee_i_Ty callee_alloca_17_i, Subzero_callee_alloca_17_i; |
| +callee_i_Ty callee_alloca_vla_i, Subzero_callee_alloca_vla_i; |
| + |
| +void caller_vvvvv(void); |
| +void Subzero_caller_vvvvv(void); |
| + |
| +typedef void (callee_vvvvv_Ty)(v4si32, v4si32, v4si32, v4si32, v4si32); |
| +callee_vvvvv_Ty callee_vvvvv, Subzero_callee_vvvvv; |
| + |
| +void caller_vlvlvfvdviv(void); |
| +void Subzero_caller_vlvlvfvdviv(void); |
| + |
| +typedef void(callee_vlvlvfvdviv_Ty)(v4f32, int64_t, v4f32, int64_t, v4f32, |
| + float, v4f32, double, v4f32, int, v4f32); |
| +callee_vlvlvfvdviv_Ty callee_vlvlvfvdviv, Subzero_callee_vlvlvfvdviv; |
| + |
| +#ifdef __cplusplus |
| +} |
| +#endif |
| + |
| +#endif // TEST_CALLING_CONV_H |