OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.target/] [i386/] [l_fma_3.h] - Blame information for rev 704

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 691 jeremybenn
 
2
#ifndef l_fma_3
3
#define l_fma_3
4
 
5
void __attribute__((sseregparm))
6
test_noneg_add_noneg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
7
{
8
  int i;
9
  for (i = 0; i < n; i++)
10
    d[i] = ((a[i] * b[i]) + c[i]) * b[i] + a[i];
11
}
12
 
13
void __attribute__((sseregparm))
14
test_noneg_add_noneg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
15
{
16
  int i;
17
  for (i = 0; i < n; i++)
18
    d[i] = ((a[i] * b[i]) + c[i]) * b[i] - a[i];
19
}
20
 
21
void __attribute__((sseregparm))
22
test_noneg_add_neg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
23
{
24
  int i;
25
  for (i = 0; i < n; i++)
26
    d[i] = -((a[i] * b[i]) + c[i]) * b[i] + a[i];
27
}
28
 
29
void __attribute__((sseregparm))
30
test_noneg_add_neg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
31
{
32
  int i;
33
  for (i = 0; i < n; i++)
34
    d[i] = -((a[i] * b[i]) + c[i]) * b[i] - a[i];
35
}
36
 
37
void __attribute__((sseregparm))
38
test_noneg_sub_noneg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
39
{
40
  int i;
41
  for (i = 0; i < n; i++)
42
    d[i] = ((a[i] * b[i]) - c[i]) * b[i] + a[i];
43
}
44
 
45
void __attribute__((sseregparm))
46
test_noneg_sub_noneg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
47
{
48
  int i;
49
  for (i = 0; i < n; i++)
50
    d[i] = ((a[i] * b[i]) - c[i]) * b[i] - a[i];
51
}
52
 
53
void __attribute__((sseregparm))
54
test_noneg_sub_neg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
55
{
56
  int i;
57
  for (i = 0; i < n; i++)
58
    d[i] = -((a[i] * b[i]) - c[i]) * b[i] + a[i];
59
}
60
 
61
void __attribute__((sseregparm))
62
test_noneg_sub_neg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
63
{
64
  int i;
65
  for (i = 0; i < n; i++)
66
    d[i] = -((a[i] * b[i]) - c[i]) * b[i] - a[i];
67
}
68
 
69
void __attribute__((sseregparm))
70
test_neg_add_noneg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
71
{
72
  int i;
73
  for (i = 0; i < n; i++)
74
    d[i] = (-(a[i] * b[i]) + c[i]) * b[i] + a[i];
75
}
76
 
77
void __attribute__((sseregparm))
78
test_neg_add_noneg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
79
{
80
  int i;
81
  for (i = 0; i < n; i++)
82
    d[i] = (-(a[i] * b[i]) + c[i]) * b[i] - a[i];
83
}
84
 
85
void __attribute__((sseregparm))
86
test_neg_add_neg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
87
{
88
  int i;
89
  for (i = 0; i < n; i++)
90
    d[i] = -(-(a[i] * b[i]) + c[i]) * b[i] + a[i];
91
}
92
 
93
void __attribute__((sseregparm))
94
test_neg_add_neg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
95
{
96
  int i;
97
  for (i = 0; i < n; i++)
98
    d[i] = -(-(a[i] * b[i]) + c[i]) * b[i] - a[i];
99
}
100
 
101
void __attribute__((sseregparm))
102
test_neg_sub_noneg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
103
{
104
  int i;
105
  for (i = 0; i < n; i++)
106
    d[i] = (-(a[i] * b[i]) - c[i]) * b[i] + a[i];
107
}
108
 
109
void __attribute__((sseregparm))
110
test_neg_sub_noneg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
111
{
112
  int i;
113
  for (i = 0; i < n; i++)
114
    d[i] = (-(a[i] * b[i]) - c[i]) * b[i] - a[i];
115
}
116
 
117
void __attribute__((sseregparm))
118
test_neg_sub_neg_add (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
119
{
120
  int i;
121
  for (i = 0; i < n; i++)
122
    d[i] = -(-(a[i] * b[i]) - c[i]) * b[i] + a[i];
123
}
124
 
125
void __attribute__((sseregparm))
126
test_neg_sub_neg_sub (TYPE *a, TYPE *b, TYPE *c, TYPE *d, int n)
127
{
128
  int i;
129
  for (i = 0; i < n; i++)
130
    d[i] = -(-(a[i] * b[i]) - c[i]) * b[i] - a[i];
131
}
132
 
133
#endif

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.