This document describes major bug fixes.
Click on a problem area listed below to read how it has been fixed.
Base Addess in Global Memory Map for Invariant Signals
Base Addesses in Global Memory Map for DWork Vectors
Correct Code Generated for Nested Reusable Subsystems
Correct Code Generated for Stateflow Library Charts in Reusable Subsystems
Correct Code Generated for Tunable State Spaces with Discontiguous Inputs
Data Store Read Block Generates Valid Code When Expression Folding Is Enabled
Dwork Identifiers with Non-Auto Storage Class Are No Longer Mangled
Eliminated Buffer Reuse Option Errors with Multiple Models Open
Initialization of Previous Zero Crossing in Reused Subsystem
Inputs and Outputs of Noninlined S-functions with Storage Class ImportedExternPointer
Iterator Blocks Generate Valid Code When Expression Folding Is Enabled
Testpointed Signals in Reused Systems Generate Code
In Real-Time Workshop 5.0, an invalid base address was saved in the global
memory map for models that generate a constant data structure
(rtC). This has been fixed.
In Release 13, if a model contained reuseable atomic subsystems that were empty or without states, then an incorrect base address would be stored in the global memory map for the system's DWork vector. This has been fixed.
If a signal directly crossed the system boundary of a reused, then an inlined, then another reused subsystem, the second reused subsystem ("C") would be called with arguments that are globaly accessed. This caused System "A" not to be reusable and resulted in invalid code. This has been fixed.
Invalid code could be generated for models where a signal is scalar and directly connected to a Stateflow library chart.
The incorrect code generally resulted in incorrect answers because the wrong signal memory addresses were read by the chart. This could result in a segmentation fault should the address be out of the program space. This problem has been fixed.
Real-Time Workshop 5.0 was generating invalid code for continuous and discrete state space blocks with discontiguous inputs (e.g., when the signal entering the block was the output of a Mux or Bus Creator block). This caused generated code to produce different answers than those obtained from simulations. This has been remedied.
In Real-Time Workshop 5.0, the Data Store Read block could generate invalid code when expression folding was enabled. This has been remedied, by disallowing expression folding for that block.
In Real-Time Workshop 5.0, the RTW optionInclude system hierarchy number in identifierscaused Dwork with non-auto storage class to have its identifiers mangled (manipulated to be unique). This is no longer the case. The behavior of the optionInclude data type acronym in identifierhas also been changed so as not to mangle the identifier of dwork with non-auto storage class.
With multiple models or libraries open, selecting or deselecting
the Buffer reuse checkbox in the General code generation
options of the Real-Time Workhop pane would sometimes cause an error
message to be displayed, or sometimes set the option on the wrong model.
This problem has been corrected.
In Release 13, the generated code of a model with triggered subsystems located within a reused subsystem block was incorrect, due to an initialization problem.This has been fixed.
In prior releases, inputs and outputs of noninlined S-functions could not have storage classImportedExternPointer. This restriction has been eliminated for scalar inputs and outputs of that storage class. However, for the time being, in order to use a wide input or output of storage classImportedExternPointer, only non-inlined S- functions may be used.
In Real-Time Workshop 5.0 it was possible for invalid code to be generated for For and While Iterator blocks when expression folding was enabled. This has been remedied, by disallowing expression folding for such blocks.
Real-Time Worksop 5.0 incorrectly generated a reusable function when two systems were identical except that in one system a signal was declared as SimulinkGlobal (testpointed) but in the other the signal was auto. As a result, the generated code might not compile. This has been remedied by adding testpointed signals to the checksum, so that systems with such signals will not be reused.
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |