This article is for the TriCore toolset. A similar approach applies to SmartCode as well. However, the keywords or code snippets would be different. This application note provides several helpful tips and tricks to help you use Linker Script Language (LSL) effectively in a TriCore VX-tools...
Possible solution To detect a stack overflow during run-time, using the C compiler options, you can use Stack overflow check. To add a stack overflow check , you can use the following C compiler option: --runtime (-r) :+/-stack s/S check for stack overflow In the Eclipse IDE, you can enabl...
By default static symbols are not included in the linker-generated map file. Possible Solution This article is for the TriCore toolset. A similar approach applies to our other products like SmartCode, and Arm. To have the linker include information about static symbols, such as static vari...
This article is for the TriCore toolset. A similar approach applies to SmartCode. However, the keywords or naming conventions would be different. This application note explains the migration of an AURIX/TriCore software project built with GCC to the TASKING toolset. It outlines the necessa...
This article is for the TriCore toolset. A similar approach applies to our other products like SmartCode, and Arm. Note that the keywords or naming conventions are different in Arm. Our TriCore tools feature the language extensions __share , __private0 , __private1 , __private2 , and __clo...
This article and the provided examples are for the TriCore toolset. Note that you can use a similar approach for our other products as well. When you use an LSL group to select sections, for example, for a dedicated placement in memory, a section might not be assigned as expected. This may...
This article is applicable for the TriCore toolset. If you need to know SmartCode-specifc details for the same, please contact us . This application note provides details on the internal sections that are generated in addition to the normal code and data sections. It walks you through the ...
This article and the provided examples are for the TriCore toolset. Note that you can use a similar approach for SmartCode as well. If you need to do run-time stack checking, you will have to implement this yourself. A simple way to check the linker calculation result versus the actual sta...
The description of the TASKING C compiler error E208 is generic, as it does not clearly explain what is wrong. Furthermore, the source code line indicated by the error message is not necessarily where the root cause of the error is present. The cause of the error itself is often trivial. B...
Possible solution Eclipse IDE When you encounter errors or warnings in the TASKING Eclipse IDE during the build process , they are displayed in the Problems view. To get more details or information about errors or warnings encountered : 1. Right-click on an error or warning in the Problems...
The SmartCode Eclipse IDE requires a 64-bit Java Runtime Environment (JRE) v11 or higher. Typically, this JRE is installed when the SmartCode product is installed, provided the installer does not detect an existing JRE installation. However, due to the installation of other products that r...
To view all tool invocations during a build in the Console view of Eclipse: 1. Select Project | Properties | C/C++ Build | Settings | Global Options 2. Enable the option Verbose mode of control program and rebuild your application or file. From the command line, you can use the control pro...
As our patches do not contain the baseline software, you must first install the baseline software of the product and then install the respective patch. Also, before proceeding with the installation of a patch, please make sure to refer What is a patch release to avoid any mistakes during t...
A patch release is an update to a released compiler product that includes modified or new files to address specific issues or improvements. It is not a complete product but rather a set of changes that modify an existing installation. The changes between the baseline software and the patch...
This article is for the TriCore product. A similar approach applies to our other products as they use the same linker script language. The C compiler adds section attributes to all code and data sections it creates. The available section attributes are: r readable sections w writable sec...
This article is for the TriCore toolset. A similar approach applies to our other toolchains as they use the same linker script language. When a variable is initialized as shown below, the initialization value for this variable needs to be placed in flash memory : int var_1 = 10; The linker...
If an address of a variable or a function is not known by the application, for example, because the variable or function is part of another application that is linked separately, you can use LSL symbols to specify the address of those symbols during link time. This approach prevents a reco...
Possible solutions The following are several recommended practices to optimize and reduce the build time of the TASKING compiler project: Use a workstation with a multi-core CPU and a large amount of PC RAM (32 GB+ is beneficial) to take full advantage of concurrent processing capabilities...
The Infineon AURIX Development Studio (ADS) Limited includes a SmartCode version for evaluation purposes. To build ADS Limited projects using, for example, a newer evaluation version of the SmartCode product or a commercial version , you can configure SmartCode as an external toolchain. Pr...
System errors such as S900, S903, S911, and S917 indicate an internal problem with the TASKING C compiler. There is a good chance this is caused by an issue with a certain C compiler optimization. Therefore, disabling this optimization might be a possible mitigation. Possible solution To d...
For the TASKING C compiler, enabling and disabling optimizations for the complete project or one of its modules can have a significant impact on the entire project. With the #pragma optimize instructions you can selectively enable or disable specific optimizations at the source level, and ...
When your application is fully located in RAM, the debugger may fail to download and run it on the target. In that case, the debugger issues an error: Loading failed: A problem occurred during downloading Possible solution Certain parts of the internal memory are automatically cleared duri...
No. There are no dedicated licenses for patches. All patches use the same license options file, which is specified by the Windows environment variable named TSK_OPTIONS_FILE_ Product-Codeversion number r revision number For example, for Tricore v6.3r1, the variable name is TSK_OPTIONS_FILE...
After updating Java JRE, the following Eclipse error may show up: An error has occured. See the log file workspace\.metadata\.log. The log file shows a line like this: Caused by: java.lang.IllegalArgumentException: Invalid version number: Version number may be negative or greater than 255 ...