1------------------------------------------------------------------------------ 2-- -- 3-- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS -- 4-- -- 5-- S Y S T E M . V X W O R K S . E X T -- 6-- -- 7-- B o d y -- 8-- -- 9-- Copyright (C) 2008-2019, Free Software Foundation, Inc. -- 10-- -- 11-- GNAT is free software; you can redistribute it and/or modify it under -- 12-- terms of the GNU General Public License as published by the Free Soft- -- 13-- ware Foundation; either version 3, or (at your option) any later ver- -- 14-- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- 15-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -- 16-- or FITNESS FOR A PARTICULAR PURPOSE. -- 17-- -- 18-- As a special exception under Section 7 of GPL version 3, you are granted -- 19-- additional permissions described in the GCC Runtime Library Exception, -- 20-- version 3.1, as published by the Free Software Foundation. -- 21-- -- 22-- You should have received a copy of the GNU General Public License and -- 23-- a copy of the GCC Runtime Library Exception along with this program; -- 24-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see -- 25-- <http://www.gnu.org/licenses/>. -- 26-- -- 27------------------------------------------------------------------------------ 28 29-- This package provides vxworks specific support functions needed 30-- by System.OS_Interface. 31 32-- This is the VxWorks 6 SMP kernel version of this package 33 34package body System.VxWorks.Ext is 35 36 ERROR : constant := -1; 37 38 -------------- 39 -- Int_Lock -- 40 -------------- 41 42 function Int_Lock return int is 43 begin 44 return ERROR; 45 end Int_Lock; 46 47 ---------------- 48 -- Int_Unlock -- 49 ---------------- 50 51 function Int_Unlock (Old : int) return int is 52 pragma Unreferenced (Old); 53 begin 54 return ERROR; 55 end Int_Unlock; 56 57 --------------- 58 -- semDelete -- 59 --------------- 60 61 function semDelete (Sem : SEM_ID) return int is 62 function Os_Sem_Delete (Sem : SEM_ID) return int; 63 pragma Import (C, Os_Sem_Delete, "semDelete"); 64 begin 65 return Os_Sem_Delete (Sem); 66 end semDelete; 67 68 ------------------------ 69 -- taskCpuAffinitySet -- 70 ------------------------ 71 72 function taskCpuAffinitySet (tid : t_id; CPU : int) return int 73 is 74 function Set_Affinity (tid : t_id; CPU : int) return int; 75 pragma Import (C, Set_Affinity, "__gnat_set_affinity"); 76 begin 77 return Set_Affinity (tid, CPU); 78 end taskCpuAffinitySet; 79 80 ------------------------- 81 -- taskMaskAffinitySet -- 82 ------------------------- 83 84 function taskMaskAffinitySet (tid : t_id; CPU_Set : unsigned) return int is 85 function Set_Affinity (tid : t_id; CPU_Set : unsigned) return int; 86 pragma Import (C, Set_Affinity, "__gnat_set_affinity_mask"); 87 begin 88 return Set_Affinity (tid, CPU_Set); 89 end taskMaskAffinitySet; 90 91 --------------- 92 -- Task_Cont -- 93 --------------- 94 95 function Task_Cont (tid : t_id) return int is 96 function taskCont (tid : t_id) return int; 97 pragma Import (C, taskCont, "taskCont"); 98 begin 99 return taskCont (tid); 100 end Task_Cont; 101 102 --------------- 103 -- Task_Stop -- 104 --------------- 105 106 function Task_Stop (tid : t_id) return int is 107 function taskStop (tid : t_id) return int; 108 pragma Import (C, taskStop, "taskStop"); 109 begin 110 return taskStop (tid); 111 end Task_Stop; 112 113end System.VxWorks.Ext; 114