1105b704494ddcec3e7a7473f07906722315b498eMatt Wala//===- subzero/crosstest/test_calling_conv.h - Test prototypes --*- C++ -*-===// 2105b704494ddcec3e7a7473f07906722315b498eMatt Wala// 3105b704494ddcec3e7a7473f07906722315b498eMatt Wala// The Subzero Code Generator 4105b704494ddcec3e7a7473f07906722315b498eMatt Wala// 5105b704494ddcec3e7a7473f07906722315b498eMatt Wala// This file is distributed under the University of Illinois Open Source 6105b704494ddcec3e7a7473f07906722315b498eMatt Wala// License. See LICENSE.TXT for details. 7105b704494ddcec3e7a7473f07906722315b498eMatt Wala// 8105b704494ddcec3e7a7473f07906722315b498eMatt Wala//===----------------------------------------------------------------------===// 9105b704494ddcec3e7a7473f07906722315b498eMatt Wala// 10105b704494ddcec3e7a7473f07906722315b498eMatt Wala// This file declares the function prototypes for crosstesting the calling 11105b704494ddcec3e7a7473f07906722315b498eMatt Wala// convention. 12105b704494ddcec3e7a7473f07906722315b498eMatt Wala// 13105b704494ddcec3e7a7473f07906722315b498eMatt Wala//===----------------------------------------------------------------------===// 14105b704494ddcec3e7a7473f07906722315b498eMatt Wala 15105b704494ddcec3e7a7473f07906722315b498eMatt Wala#include "test_calling_conv.def" 16105b704494ddcec3e7a7473f07906722315b498eMatt Wala#include "vectors.h" 171d235425dab1f3dd059973fc53f1b1d5879469e3John Porto#include "xdefs.h" 18105b704494ddcec3e7a7473f07906722315b498eMatt Wala 19105b704494ddcec3e7a7473f07906722315b498eMatt Walatypedef void (*CalleePtrTy)(); 20105b704494ddcec3e7a7473f07906722315b498eMatt Walaextern CalleePtrTy Callee; 21105b704494ddcec3e7a7473f07906722315b498eMatt Walaextern size_t ArgNum; 22105b704494ddcec3e7a7473f07906722315b498eMatt Walaextern char *Buf; 23105b704494ddcec3e7a7473f07906722315b498eMatt Wala 24105b704494ddcec3e7a7473f07906722315b498eMatt Walavoid caller_i(); 25105b704494ddcec3e7a7473f07906722315b498eMatt Walavoid caller_alloca_i(); 26105b704494ddcec3e7a7473f07906722315b498eMatt Walatypedef void callee_i_Ty(int); 27105b704494ddcec3e7a7473f07906722315b498eMatt Walacallee_i_Ty callee_i; 28105b704494ddcec3e7a7473f07906722315b498eMatt Walacallee_i_Ty callee_alloca_i; 29105b704494ddcec3e7a7473f07906722315b498eMatt Wala 30105b704494ddcec3e7a7473f07906722315b498eMatt Walavoid caller_vvvvv(); 31dd842dbb57b825ed0dd6400648d0602b74c90affJim Stichnothtypedef void(callee_vvvvv_Ty)(v4si32, v4si32, v4si32, v4si32, v4si32); 32105b704494ddcec3e7a7473f07906722315b498eMatt Walacallee_vvvvv_Ty callee_vvvvv; 33105b704494ddcec3e7a7473f07906722315b498eMatt Wala 34ba6a67c960a126d85b94a87c8ea7358bec0da048John Portovoid caller_vlvilvfvdviv(); 35ba6a67c960a126d85b94a87c8ea7358bec0da048John Portotypedef void(callee_vlvilvfvdviv_Ty)(v4f32, int64, v4f32, int, int64, v4f32, 36dd842dbb57b825ed0dd6400648d0602b74c90affJim Stichnoth float, v4f32, double, v4f32, int, v4f32); 37ba6a67c960a126d85b94a87c8ea7358bec0da048John Portocallee_vlvilvfvdviv_Ty callee_vlvilvfvdviv; 38