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 a version for VxWorks 5 based systems with no interrupts: 33-- HI-Ravenscar for VxWorks 5, VxWorks 653 vThreads (not ravenscar-cert) 34 35package body System.VxWorks.Ext is 36 37 ERROR : constant := -1; 38 39 -------------- 40 -- Int_Lock -- 41 -------------- 42 43 function Int_Lock return int is 44 begin 45 return ERROR; 46 end Int_Lock; 47 48 ---------------- 49 -- Int_Unlock -- 50 ---------------- 51 52 function Int_Unlock (Old : int) return int is 53 pragma Unreferenced (Old); 54 begin 55 return ERROR; 56 end Int_Unlock; 57 58 ----------------------- 59 -- Interrupt_Connect -- 60 ----------------------- 61 62 function Interrupt_Connect 63 (Vector : Interrupt_Vector; 64 Handler : Interrupt_Handler; 65 Parameter : System.Address := System.Null_Address) return int 66 is 67 pragma Unreferenced (Vector, Handler, Parameter); 68 begin 69 return ERROR; 70 end Interrupt_Connect; 71 72 ----------------------- 73 -- Interrupt_Context -- 74 ----------------------- 75 76 function Interrupt_Context return int is 77 begin 78 -- For VxWorks 653 vThreads, never in an interrupt context 79 80 return 0; 81 end Interrupt_Context; 82 83 -------------------------------- 84 -- Interrupt_Number_To_Vector -- 85 -------------------------------- 86 87 function Interrupt_Number_To_Vector 88 (intNum : int) return Interrupt_Vector 89 is 90 pragma Unreferenced (intNum); 91 begin 92 return 0; 93 end Interrupt_Number_To_Vector; 94 95 --------------- 96 -- semDelete -- 97 --------------- 98 99 function semDelete (Sem : SEM_ID) return int is 100 function Os_Sem_Delete (Sem : SEM_ID) return int; 101 pragma Import (C, Os_Sem_Delete, "semDelete"); 102 begin 103 return Os_Sem_Delete (Sem); 104 end semDelete; 105 106 ------------------------ 107 -- taskCpuAffinitySet -- 108 ------------------------ 109 110 function taskCpuAffinitySet (tid : t_id; CPU : int) return int is 111 pragma Unreferenced (tid, CPU); 112 begin 113 return ERROR; 114 end taskCpuAffinitySet; 115 116 ------------------------- 117 -- taskMaskAffinitySet -- 118 ------------------------- 119 120 function taskMaskAffinitySet (tid : t_id; CPU_Set : unsigned) return int is 121 pragma Unreferenced (tid, CPU_Set); 122 begin 123 return ERROR; 124 end taskMaskAffinitySet; 125 126end System.VxWorks.Ext; 127