annotate run/t/template_33_B.d @ 1630:d0efa3ae5522 default tip

run/mini/naked_asm5: New x86_64 ABI passes the arguments in reverse order.
author David Nadlinger <code@klickverbot.at>
date Sat, 23 Apr 2011 22:57:32 +0200
parents 5511f9277078
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
917
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
1 // $HeadUR$
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
2 // $Date$
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
3 // $Author$
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
4
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
5 // @author@ Dave <Dave_member@pathlink.com>
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
6 // @date@ 2006-03-18
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
7 // @uri@ news:dvgq34$22hv$1@digitaldaemon.com
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
8
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
9 module dstress.run.t.template_33_B;
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
10
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
11 template sum(creal x){
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
12 static if (x.re <= 1.0L){
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
13 const creal sum = x;
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
14 }else{
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
15 const creal sum = x + sum!(x - 1.0L);
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
16 }
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
17 }
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
18
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
19 int main(){
920
5511f9277078 testcase review
thomask
parents: 917
diff changeset
20 creal x = sum!(2.0L + 0.0Li);
917
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
21
920
5511f9277078 testcase review
thomask
parents: 917
diff changeset
22 if(x != 3.0L + 0.0Li){
917
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
23 assert(0);
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
24 }
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
25
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
26 return 0;
ab71ca67c717 Dave <Dave_member@pathlink.com>
thomask
parents:
diff changeset
27 }