Skip to content

Commit 1fde0fd

Browse files
Fix for issue #56 and moved misaligned LD/ST parameter from I to Sm so they are all together.
1 parent dfc6c6d commit 1fde0fd

File tree

4 files changed

+19
-15
lines changed

4 files changed

+19
-15
lines changed

arch/ext/I.yaml

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,4 @@ I:
1010
changes:
1111
- ratified RVWMO memory model and exclusion of FENCE.I, counters, and CSR instructions that were in previous base ISA
1212
description: |
13-
Base integer instructions -- TODO
14-
params:
15-
MISALIGNED_LDST:
16-
description: |
17-
Whether or not the implementation supports non-atomic misaligned loads and stores in
18-
main memory (does *not* affect misaligned support to device memory)
19-
schema:
20-
type: boolean
13+
Base integer instructions -- TODO

arch/ext/Sm.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,13 @@ Sm:
233233
type: integer
234234
minimum: 0
235235
maximum: 127
236+
MISALIGNED_LDST:
237+
description: |
238+
Does the implementation perform non-atomic misaligned loads and stores to main memory
239+
(does *not* affect misaligned support to device memory)?
240+
If not, the implementation throws a misaligned exception.
241+
schema:
242+
type: boolean
236243
MISALIGNED_LDST_EXCEPTION_PRIORITY:
237244
description: |
238245
The relative priority of a load/store/AMO exception vs. load/store/AMO page-fault

backends/csc_crd_doc/tasks.rake

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,18 @@ Dir.glob("#{$root}/arch/csc_crd/*.yaml") do |f|
2222
"gen:arch"
2323
] do |t|
2424
# TODO: schema validation
25-
crd = arch_def_for("_").csc_crd(crd_name)
25+
arch_def = arch_def_for("_")
26+
crd = arch_def.csc_crd(crd_name)
2627
raise "No CSC CRD defined for #{crd_name}" if crd.nil?
2728

2829
version = File.basename(t.name, '.adoc').split('-')[1..].join('-')
2930

30-
31-
32-
template = ERB.new(File.read("#{CSC_CRD_DOC_DIR}/templates/crd.adoc.erb"), trim_mode: "-")
33-
template.filename = "#{CSC_CRD_DOC_DIR}/templates/crd.adoc.erb"
31+
erb = ERB.new(File.read("#{CSC_CRD_DOC_DIR}/templates/crd.adoc.erb"), trim_mode: "-")
32+
erb.filename = "#{CSC_CRD_DOC_DIR}/templates/crd.adoc.erb"
3433

3534
FileUtils.mkdir_p File.dirname(t.name)
36-
File.write t.name, template.result(binding)
35+
File.write t.name, AsciidocUtils.resolve_links(arch_def.find_replace_links(erb.result(binding)))
36+
puts "Generated adoc source at #{t.name}"
3737
end
3838

3939
file "#{$root}/gen/csc_crd_doc/pdf/#{crd_name}.pdf" => [

backends/csc_crd_doc/templates/crd.adoc.erb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,13 @@ a| <%= constraint.note %>
126126
127127
<%- unless crd.out_of_scope_params(ext_req.name).empty? -%>
128128
.<%= ext_req.name %> Extension OUT-OF-SCOPE Parameters
129+
[%autowidth]
130+
|===
131+
| Parameter
129132
<%- crd.out_of_scope_params(ext_req.name).sort.each do |param_db| -%>
130-
* <<anchor-ext-<%= ext_req.name %>-param-<%= param_db.name %>,<%= param_db.name %>>>
133+
| <<anchor-ext-<%= ext_req.name %>-param-<%= param_db.name %>,<%= param_db.name %>>>
131134
<%- end # do constraint -%>
135+
|===
132136
<%- end # unless table -%>
133137
<%- end # do extension-%>
134138

0 commit comments

Comments
 (0)