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

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [gold/] [testsuite/] [ifuncdep2.c] - Blame information for rev 303

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

Line No. Rev Author Line
1 27 khays
/* Test 3 STT_GNU_IFUNC symbols.  */
2
 
3
#include "ifunc-sel.h"
4
 
5
int global __attribute__ ((visibility ("protected"))) = -1;
6
 
7
static int
8
one (void)
9
{
10
  return 1;
11
}
12
 
13
static int
14
minus_one (void)
15
{
16
  return -1;
17
}
18
 
19
static int
20
zero (void)
21
{
22
  return 0;
23
}
24
 
25
void * foo1_ifunc (void) __asm__ ("foo1");
26
__asm__(".type foo1, %gnu_indirect_function");
27
 
28
void *
29
foo1_ifunc (void)
30
{
31
  return ifunc_sel (one, minus_one, zero);
32
}
33
 
34
void * foo2_ifunc (void) __asm__ ("foo2");
35
__asm__(".type foo2, %gnu_indirect_function");
36
 
37
void *
38
foo2_ifunc (void)
39
{
40
  return ifunc_sel (minus_one, one, zero);
41
}
42
 
43
void * foo3_ifunc (void) __asm__ ("foo3");
44
__asm__(".type foo3, %gnu_indirect_function");
45
 
46
void *
47
foo3_ifunc (void)
48
{
49
  return ifunc_sel (one, zero, minus_one);
50
}

powered by: WebSVN 2.1.0

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