Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
Ocarina
Commits
ab70edfa
Commit
ab70edfa
authored
Jan 25, 2013
by
yoogx
Browse files
Merge branch 'github_issues'
parents
febb96d7
bdbfe2ca
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
resources/AADLv2/communication_properties.aadl
View file @
ab70edfa
...
...
@@ -35,10 +35,11 @@ property set Communication_Properties is
Transmission_Type: enumeration (push, pull)
applies to (data port, port connection, bus, virtual bus);
Input_Rate: Rate_Spec => (Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed;)
Input_Rate: Rate_Spec => [ Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed; ]
applies to (port);
Input_Time: list of IO_Time_Spec => (
(
Time => Dispatch; Offset => 0 ns .. 0 ns;
)
)
Input_Time: list of IO_Time_Spec => (
[
Time => Dispatch; Offset => 0 ns .. 0 ns;
]
)
applies to (port);
IO_Time_Spec: type record (
...
...
@@ -48,19 +49,20 @@ property set Communication_Properties is
IO_Reference_Time: type enumeration (Dispatch, Start, Completion, Deadline, NoIO);
Output_Rate: Rate_Spec =>
(
Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed;
)
Output_Rate: Rate_Spec =>
[
Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed;
]
applies to (port);
Output_Time: list of IO_Time_Spec => (
(
Time => Completion; Offset => 0 ns .. 0 ns;
)
)
Output_Time: list of IO_Time_Spec => (
[
Time => Completion; Offset => 0 ns .. 0 ns;
]
)
applies to (port);
Rate_Spec: type record (
Value_Range: range of aadlreal;
Rate_Unit: enumeration (PerSecond, PerDispatch);
Rate_Distribution: Supported_Distributions;
);
Subprogram_Call_Rate: Rate_Spec =>
(
Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed;
)
Subprogram_Call_Rate: Rate_Spec =>
[
Value_Range => 1.0 .. 1.0; Rate_Unit => PerDispatch; Rate_Distribution => Fixed;
]
applies to (subprogram access);
Transmission_Time: record (
...
...
resources/AADLv2/memory_properties.aadl
View file @
ab70edfa
...
...
@@ -5,61 +5,61 @@
property set Memory_Properties is
Size: type aadlinteger 0 Bytes .. Max_Memory_Size units Size_Units;
Size_Range: type range of Size;
Access_Right: Access_Rights => read_write
applies to (data, bus, data access, bus access);
Access_Rights: type enumeration (read_only, write_only, read_write, by_method);
Access_Time: record (
First: IO_Time_Spec;
Last: IO_Time_Spec;)
=>
(
First =>
(
Time => Start; Offset => 0 ns .. 0 ns;
)
;
Last =>
(
Time => Completion; Offset => 0 ns .. 0 ns;
);)
applies to (data access);
=>
[
First =>
[
Time => Start; Offset => 0 ns .. 0 ns;
]
;
Last =>
[
Time => Completion; Offset => 0 ns .. 0 ns;
]; ]
applies to (data access);
Allowed_Message_Size: Size_Range
applies to (bus);
Assign_Time: record (
Fixed: Time_Range;
PerByte: Time_Range;)
applies to (processor);
Base_Address: aadlinteger 0 .. Max_Base_Address
applies to (memory, data, data access, port);
Device_Register_Address: aadlinteger
applies to (port, feature group);
Read_Time: record (
Fixed: Time_Range;
PerByte: Time_Range;)
applies to (memory);
Source_Code_Size: Size
applies to (data, thread, thread group, process, system, subprogram, processor, device);
Source_Data_Size: Size
applies to (data, subprogram, thread, thread group, process, system, processor, device);
Source_Heap_Size: Size
applies to (thread, subprogram);
Source_Stack_Size: Size
applies to (thread, subprogram, processor, device);
Byte_Count: aadlinteger 0 .. Max_Byte_Count
applies to (memory);
Word_Size: Size => 8 bits
applies to (memory);
Word_Space: aadlinteger 1 .. Max_Word_Space => 1
applies to (memory);
Write_Time: record (
Fixed: Time_Range;
PerByte: Time_Range;)
...
...
src/backends/ocarina-be_aadl-properties-values.adb
View file @
ab70edfa
...
...
@@ -311,7 +311,7 @@ package body Ocarina.BE_AADL.Properties.Values is
List_Node
:
Node_Id
;
begin
Print_Token
(
T_Left_
Parenthesis
);
Print_Token
(
T_Left_
Square_Bracket
);
Write_Space
;
List_Node
:=
First_Node
...
...
@@ -331,7 +331,7 @@ package body Ocarina.BE_AADL.Properties.Values is
end
loop
;
Write_Space
;
Print_Token
(
T_Right_
Parenthesis
);
Print_Token
(
T_Right_
Square_Bracket
);
end
Print_Record_Term
;
-------------------------------
...
...
src/frontends/aadl/ocarina-fe_aadl-parser-properties-values.adb
View file @
ab70edfa
...
...
@@ -2365,6 +2365,16 @@ package body Ocarina.FE_AADL.Parser.Properties.Values is
when
T_Left_Parenthesis
=>
return
P_Boolean_Or_Record_Term
;
when
T_Left_Square_Bracket
=>
if
AADL_Version
=
AADL_V2
then
return
P_Record_Term
;
else
DPE
(
PC_Property_Expression
,
EMC_Not_Allowed_In_AADL_V1
);
Skip_Tokens
(
T_Semicolon
);
return
No_Node
;
end
if
;
when
T_Compute
=>
if
AADL_Version
=
AADL_V2
then
return
P_Computed_Term
;
...
...
@@ -2539,8 +2549,8 @@ package body Ocarina.FE_AADL.Parser.Properties.Values is
-- AADL_V2
-- record_term ::=
--
(
record_field_identifier => property_expression ;
-- ( record_field_identifier => property_expression ; )*
)
--
[
record_field_identifier => property_expression ;
-- ( record_field_identifier => property_expression ; )*
]
function
P_Record_Term
return
Node_Id
is
use
Ocarina
.
ME_AADL
.
AADL_Tree
.
Nodes
;
...
...
@@ -2567,7 +2577,7 @@ package body Ocarina.FE_AADL.Parser.Properties.Values is
Items
:=
P_Items_List
(
P_Record_Term_Element
'
Access
,
No_Node
,
T_Semicolon
,
T_Right_
Parenthesis
,
T_Right_
Square_Bracket
,
PC_Record_Term
,
True
);
...
...
tests/MANIFEST
View file @
ab70edfa
...
...
@@ -280,3 +280,4 @@ tests/test_identifier/t.aadl
tests/example_04_03/t.aadl
tests/example_04_05_1/t.aadl
tests/github/issue_1/test.aadl
tests/github/issue_1/MANIFEST
0 → 100644
View file @
ab70edfa
AADL_VERSION=-aadlv2
tests/github/issue_1/test.aadl
0 → 100644
View file @
ab70edfa
package
PropValue
public
bus
Ethernet_Cable
end
Ethernet_Cable
;
bus
implementation
Ethernet_Cable
.
ARINC_664
properties
--
The
following
is
legal
AADL
2
and
accepted
by
OSATE
--
but
not
by
Ocarina
.
Ocarina
only
accepts
()
and
OSATE
--
only
accepts
[]
for
records
.
Transmission_Time
=>
[
Fixed
=>
3360
ns
..
3360
ns
;
PerByte
=>
80
ns
..
80
ns
;
];
end
Ethernet_Cable
.
ARINC_664
;
system
Test
end
Test
;
system
implementation
Test
.
Imp
subcomponents
aBus
:
bus
Ethernet_Cable
.
ARINC_664
;
end
Test
.
Imp
;
end
PropValue
;
\ No newline at end of file
tests/test_tree_p2/test.aadl.out
View file @
ab70edfa
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment