TMS320C6000 Optimizing Compiler V 7.0

Total Page:16

File Type:pdf, Size:1020Kb

TMS320C6000 Optimizing Compiler V 7.0 TMS320C6000 Optimizing Compiler v 7.0 User's Guide Literature Number: SPRU187Q February 2010 2 SPRU187Q–February 2010 Submit Documentation Feedback Copyright © 2010, Texas Instruments Incorporated Contents Preface ...................................................................................................................................... 13 1 Introduction to the Software Development Tools ................................................................... 17 1.1 Software Development Tools Overview ................................................................................ 18 1.2 C/C++ Compiler Overview ................................................................................................ 19 1.2.1 ANSI/ISO Standard ............................................................................................... 19 1.2.2 Output Files ....................................................................................................... 20 1.2.3 Compiler Interface ................................................................................................ 20 1.2.4 Utilities ............................................................................................................. 20 2 Using the C/C++ Compiler .................................................................................................. 21 2.1 About the Compiler ........................................................................................................ 22 2.2 Invoking the C/C++ Compiler ............................................................................................ 22 2.3 Changing the Compiler's Behavior With Options ...................................................................... 23 2.3.1 Frequently Used Options ........................................................................................ 32 2.3.2 Miscellaneous Useful Options .................................................................................. 34 2.3.3 Run-Time Model Options ........................................................................................ 35 2.3.4 Selecting Target CPU Version (--silicon_version Option) ................................................... 35 2.3.5 Symbolic Debugging and Profiling Options ................................................................... 36 2.3.6 Specifying Filenames ............................................................................................ 37 2.3.7 Changing How the Compiler Interprets Filenames ........................................................... 37 2.3.8 Changing How the Compiler Processes C Files ............................................................. 38 2.3.9 Changing How the Compiler Interprets and Names Extensions ........................................... 38 2.3.10 Specifying Directories ........................................................................................... 38 2.3.11 Assembler Options .............................................................................................. 39 2.3.12 Deprecated Options ............................................................................................. 40 2.4 Controlling the Compiler Through Environment Variables ........................................................... 40 2.4.1 Setting Default Compiler Options (C6X_C_OPTION) ....................................................... 40 2.4.2 Naming an Alternate Directory (C6X_C_DIR ) ............................................................... 41 2.5 Precompiled Header Support ............................................................................................ 42 2.5.1 Automatic Precompiled Header ................................................................................. 42 2.5.2 Manual Precompiled Header .................................................................................... 42 2.5.3 Additional Precompiled Header Options ....................................................................... 42 2.6 Controlling the Preprocessor ............................................................................................. 43 2.6.1 Predefined Macro Names ....................................................................................... 43 2.6.2 The Search Path for #include Files ............................................................................ 44 2.6.3 Generating a Preprocessed Listing File (--preproc_only Option) .......................................... 45 2.6.4 Continuing Compilation After Preprocessing (--preproc_with_compile Option) .......................... 45 2.6.5 Generating a Preprocessed Listing File With Comments (--preproc_with_comment Option) .......... 45 2.6.6 Generating a Preprocessed Listing File With Line-Control Information (--preproc_with_line Option) ............................................................................................................. 45 2.6.7 Generating Preprocessed Output for a Make Utility (--preproc_dependency Option) ................... 46 2.6.8 Generating a List of Files Included With the #include Directive (--preproc_includes Option) .......... 46 2.6.9 Generating a List of Macros in a File (--preproc_macros Option) .......................................... 46 2.7 Understanding Diagnostic Messages ................................................................................... 46 2.7.1 Controlling Diagnostics .......................................................................................... 47 2.7.2 How You Can Use Diagnostic Suppression Options ........................................................ 48 SPRU187Q–February 2010 Contents 3 Submit Documentation Feedback Copyright © 2010, Texas Instruments Incorporated www.ti.com 2.8 Other Messages ........................................................................................................... 48 2.9 Generating Cross-Reference Listing Information (--gen_acp_xref Option) ........................................ 49 2.10 Generating a Raw Listing File (--gen_acp_raw Option) .............................................................. 49 2.11 Using Inline Function Expansion ........................................................................................ 50 2.11.1 Inlining Intrinsic Operators ..................................................................................... 50 2.11.2 Automatic Inlining ................................................................................................ 51 2.11.3 Unguarded Definition-Controlled Inlining ..................................................................... 51 2.11.4 Guarded Inlining and the _INLINE Preprocessor Symbol .................................................. 51 2.11.5 Inlining Restrictions ............................................................................................. 53 2.12 Interrupt Flexibility Options (--interrupt_threshold Option) ........................................................... 53 2.13 Linking C6400 Code With C6200/C6700/Older C6400 Object Code ............................................... 54 2.14 Using Interlist ............................................................................................................... 54 2.15 Controlling Application Binary Interface ................................................................................ 55 2.16 Enabling Entry Hook and Exit Hook Functions ........................................................................ 56 3 Optimizing Your Code ........................................................................................................ 57 3.1 Invoking Optimization ..................................................................................................... 58 3.2 Optimizing Software Pipelining .......................................................................................... 59 3.2.1 Turn Off Software Pipelining (--disable_software_pipelining Option) ...................................... 60 3.2.2 Software Pipelining Information ................................................................................. 60 3.2.3 Collapsing Prologs and Epilogs for Improved Performance and Code Size .............................. 64 3.3 Redundant Loops .......................................................................................................... 65 3.4 Utilizing the Loop Buffer Using SPLOOP on C6400+ and C6740 .................................................. 67 3.5 Reducing Code Size (--opt_for_space (or -ms) Option) .............................................................. 67 3.6 Performing File-Level Optimization (--opt_level=3 option) ........................................................... 68 3.6.1 Controlling File-Level Optimization (--std_lib_func_def Options) ........................................... 68 3.6.2 Creating an Optimization Information File (--gen_opt_info Option) ........................................ 68 3.7 Performing Program-Level Optimization (--program_level_compile and --opt_level=3 options) ................ 69 3.7.1 Controlling Program-Level Optimization (--call_assumptions Option) ..................................... 69 3.7.2 Optimization Considerations When Mixing C/C++ and Assembly ......................................... 70 3.8 Using Feedback Directed Optimization ................................................................................. 71 3.8.1 Feedback Directed Optimization ............................................................................... 71 3.8.2 Profile Data Decoder ............................................................................................
Recommended publications
  • Using the GNU Compiler Collection (GCC)
    Using the GNU Compiler Collection (GCC) Using the GNU Compiler Collection by Richard M. Stallman and the GCC Developer Community Last updated 23 May 2004 for GCC 3.4.6 For GCC Version 3.4.6 Published by: GNU Press Website: www.gnupress.org a division of the General: [email protected] Free Software Foundation Orders: [email protected] 59 Temple Place Suite 330 Tel 617-542-5942 Boston, MA 02111-1307 USA Fax 617-542-2652 Last printed October 2003 for GCC 3.3.1. Printed copies are available for $45 each. Copyright c 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being \GNU General Public License" and \Funding Free Software", the Front-Cover texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included in the section entitled \GNU Free Documentation License". (a) The FSF's Front-Cover Text is: A GNU Manual (b) The FSF's Back-Cover Text is: You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development. i Short Contents Introduction ...................................... 1 1 Programming Languages Supported by GCC ............ 3 2 Language Standards Supported by GCC ............... 5 3 GCC Command Options .........................
    [Show full text]
  • A Secure, Low Cost Synchophasor Measurement Device
    University of Tennessee, Knoxville TRACE: Tennessee Research and Creative Exchange Doctoral Dissertations Graduate School 8-2015 A 3rd Generation Frequency Disturbance Recorder: A Secure, Low Cost Synchophasor Measurement Device Jerel Alan Culliss University of Tennessee - Knoxville, [email protected] Follow this and additional works at: https://trace.tennessee.edu/utk_graddiss Part of the Power and Energy Commons, Systems and Communications Commons, and the VLSI and Circuits, Embedded and Hardware Systems Commons Recommended Citation Culliss, Jerel Alan, "A 3rd Generation Frequency Disturbance Recorder: A Secure, Low Cost Synchophasor Measurement Device. " PhD diss., University of Tennessee, 2015. https://trace.tennessee.edu/utk_graddiss/3495 This Dissertation is brought to you for free and open access by the Graduate School at TRACE: Tennessee Research and Creative Exchange. It has been accepted for inclusion in Doctoral Dissertations by an authorized administrator of TRACE: Tennessee Research and Creative Exchange. For more information, please contact [email protected]. To the Graduate Council: I am submitting herewith a dissertation written by Jerel Alan Culliss entitled "A 3rd Generation Frequency Disturbance Recorder: A Secure, Low Cost Synchophasor Measurement Device." I have examined the final electronic copy of this dissertation for form and content and recommend that it be accepted in partial fulfillment of the equirr ements for the degree of Doctor of Philosophy, with a major in Electrical Engineering. Yilu Liu, Major Professor We have read this dissertation and recommend its acceptance: Leon M. Tolbert, Wei Gao, Lee L. Riedinger Accepted for the Council: Carolyn R. Hodges Vice Provost and Dean of the Graduate School (Original signatures are on file with official studentecor r ds.) A 3rd Generation Frequency Disturbance Recorder: A Secure, Low Cost Synchrophasor Measurement Device A Dissertation Presented for the Doctor of Philosophy Degree The University of Tennessee, Knoxville Jerel Alan Culliss August 2015 Copyright © 2015 by Jerel A.
    [Show full text]
  • The GNU Compiler Collection on Zseries
    The GNU Compiler Collection on zSeries Dr. Ulrich Weigand Linux for zSeries Development, IBM Lab Böblingen [email protected] Agenda GNU Compiler Collection History and features Architecture overview GCC on zSeries History and current status zSeries specific features and challenges Using GCC GCC optimization settings GCC inline assembly Future of GCC GCC and Linux Apache Samba mount cvs binutils gdb gcc Linux ls grep Kernel glibc DB2 GNU - essentials UDB SAP R/3 Unix - tools Applications GCC History Timeline January 1984: Start of the GNU project May 1987: Release of GCC 1.0 February 1992: Release of GCC 2.0 August 1997: EGCS project announced November 1997: Release of EGCS 1.0 April 1999: EGCS / GCC merge July 1999: Release of GCC 2.95 June 2001: Release of GCC 3.0 May/August 2002: Release of GCC 3.1/3.2 March 2003: Release of GCC 3.3 (estimated) GCC Features Supported Languages part of GCC distribution: C, C++, Objective C Fortran 77 Java Ada distributed separately: Pascal Modula-3 under development: Fortran 95 Cobol GCC Features (cont.) Supported CPU targets i386, ia64, rs6000, s390 sparc, alpha, mips, arm, pa-risc, m68k, m88k many embedded targets Supported OS bindings Unix: Linux, *BSD, AIX, Solaris, HP/UX, Tru64, Irix, SCO DOS/Windows, Darwin (MacOS X) embedded targets and others Supported modes of operation native compiler cross-compiler 'Canadian cross' builds GCC Architecture: Overview C C++ Fortran Java ... front-end front-end front-end front-end tree Optimizer rtx i386 s390 rs6000 sparc ... back-end back-end back-end
    [Show full text]
  • A Continuación Se Realizará Una Breve Descripción De Los Objetivos De Los Cuales Estará Formado El Trabajo Perteneciente
    UNIVERSIDAD POLITÉCNICA DE MADRID Escuela Universitaria de Ingeniera Técnica de Telecomunicación INTEGRACIÓN MPLAYER – OPENSVC EN EL PROCESADOR MULTINÚCLEO OMAP3530 TRABAJO FIN DE MÁSTER Autor: Óscar Herranz Alonso Ingeniero Técnico de Telecomunicación Tutor: Fernando Pescador del Oso Doctor Ingeniero de Telecomunicación Julio 2012 2 4 AGRADECIMIENTOS Un año y pocos meses después de la defensa de mi Proyecto Fin de Carrera me vuelvo a encontrar en la misma situación: escribiendo estás líneas de mi Trabajo Fin de Máster para agradecer a aquellas personas que me han apoyado y ayudado de alguna forma durante esta etapa de mi vida. Después de un año en el que he hecho demasiadas cosas importantes en mi vida (y sorprendentemente todas bien), ha llegado la hora de dar por finalizado el Máster, el último paso antes de cerrar mi carrera de estudiante. Por ello, me gustaría agradecer en primer lugar al Grupo de Investigación GDEM por darme la oportunidad de formar parte de su equipo y en especial a Fernando, persona ocupada donde las haya, pero que una vez más me ha aconsejado en numerosas ocasiones el camino a seguir para solventar los problemas. Gracias Fernando por tu tiempo y dedicación. Agradecer a mis padres, Fidel y Victoria, y a mi hermano, Víctor, el apoyo y las fuerzas recibidas en todo momento. Sé que no todos podréis estar presentes en mi defensa de este Trabajo Fin de Máster pero da igual. Ya me habéis demostrado con creces lo maravillosos que sois. Gracias por vuestro apoyo incondicional y por recibirme siempre con una sonrisa dibujada en vuestro rostro.
    [Show full text]
  • Section “Common Predefined Macros” in the C Preprocessor
    The C Preprocessor For gcc version 12.0.0 (pre-release) (GCC) Richard M. Stallman, Zachary Weinberg Copyright c 1987-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation. A copy of the license is included in the section entitled \GNU Free Documentation License". This manual contains no Invariant Sections. The Front-Cover Texts are (a) (see below), and the Back-Cover Texts are (b) (see below). (a) The FSF's Front-Cover Text is: A GNU Manual (b) The FSF's Back-Cover Text is: You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development. i Table of Contents 1 Overview :::::::::::::::::::::::::::::::::::::::: 1 1.1 Character sets:::::::::::::::::::::::::::::::::::::::::::::::::: 1 1.2 Initial processing ::::::::::::::::::::::::::::::::::::::::::::::: 2 1.3 Tokenization ::::::::::::::::::::::::::::::::::::::::::::::::::: 4 1.4 The preprocessing language :::::::::::::::::::::::::::::::::::: 6 2 Header Files::::::::::::::::::::::::::::::::::::: 7 2.1 Include Syntax ::::::::::::::::::::::::::::::::::::::::::::::::: 7 2.2 Include Operation :::::::::::::::::::::::::::::::::::::::::::::: 8 2.3 Search Path :::::::::::::::::::::::::::::::::::::::::::::::::::: 9 2.4 Once-Only Headers::::::::::::::::::::::::::::::::::::::::::::: 9 2.5 Alternatives to Wrapper #ifndef ::::::::::::::::::::::::::::::
    [Show full text]
  • Microsoft Visual Studio: an Integrated Windows Program Development Environment
    Microsoft Visual Studio: An Integrated Windows Program Development Environment Microsoft Visual Studio • Self-contained environment for Windows program development: – Creating/editing – Compiling/linking (building) – Testing/debugging • IDE that accompanies Visual C++, Visual Basic, Visual C#, and other Microsoft Windows programming languages • See Chapter 2 & Appendix C of the Deitel text • Also Appendix C of the Gregory text Some Visual Studio Components • The Editors: C, C++, C#, VB source program text editors • cut/paste, color cues, indentation • generate source text files Resource Editors • Resources: Windows static data • Determine look and feel of an application – icons, bitmaps, cursors, menus, dialog boxes, etc. • graphical • generate resource script (.rc) files • integrated with text editor • created visually .NET Language Compilers • Unmanaged Code C/C++ Compiler – translates source programs to machine language – generates object (.obj) files for linker • Managed Code .NET Language Compilers – Many of them ? multi-language interoperability – Translate source programs to MSIL – Generate a “Portable Executable” that must be translated to target machine language by the CLR • Resource Compiler – Reads .rc file – Generates binary resource (.res) file for linker The Linker • Reads compiler .obj and .res files • Accesses C/C++/Windows libraries • Generates executable (.exe or .dll) Program Build and Run in the .NET Framework Common Language Runtime The Debugger • Powerful source code debugger • Integrated with all parts of Visual
    [Show full text]
  • Migrating Large Codebases to C++ Modules
    Migrating large codebases to C++ Modules Yuka Takahashi - The University of Tokyo Princeton University Oksana Shadura - UNL Vassil Vassilev Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !1 Agenda 1. Motivation of C++ Modules 2. C++ Modules in ROOT 3. C++ Modules in CMSSW 4. CMS Performance Results 5. Conclusion Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !2 Motivation of C++ Modules Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !3 Motivation of C++ Modules C++ Modules technology: - Cache parsed header file information - Avoid header re-parsing - Avoid runtime header parsing (In ROOT) - Part of C++20 Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !4 Motivation of C++ Modules #include <vector> Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !5 Motivation of C++ Modules #include <vector> Textual Include Precompiled Headers (PCH) Modules Expensive Inseparable Fragile Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !6 Motivation of C++ Modules …… TVirtualPad.h …… # 286 "/usr/include/c++/v1/vector" 2 3 #include "TVirtualPad.h" namespace std { inline namespace __1 { template <bool> class __vector_base_common vector #include <vector> Preprocess { __attribute__ #include <set> ((__visibility__("hidden"), __always_inline__)) __vector_base_common() Textual Include{} …… int main() { # 394 "/usr/include/c++/v1/set" 3 namespace std {inline namespace __1 { … set template <…> class set { original code public: typedef _Key key_type; …… .o Compile Parse int main { one big file! …… Yuka Takahashi 13.03.2019 Migrating large codebases to C++ Modules, ACAT 2019 !7 Motivation of C++ Modules Textual Include .c .o 1.
    [Show full text]
  • 24Th Embarcadero Developer Camp
    RAD Studio XE3 The Developer Force Multiplier Mac OS X Windows 8 Mountain Lion C++11 64-bit Metropolis UI C99 Boost Visual LiveBindings C++ Bjarne Stroustrup C with Objects (1979) Modeled OO after Simula and Ada ○ But syntax and RTL based on C Classes Inheritance Inlining Default arguments Type checking CFront compiler A Brief History of C++ C++11 – A new Standard Language Library Rvalue references and move constructors Variadic templates constexpr - Generalized constant New string literals expressions User-defined literals Core language usability enhancements Multithreading memory model Initializer lists Uniform initialization Thread-local storage Type inference Explicitly defaulted and deleted Range-based for-loop special member functions Lambda functions and expressions Type long long int Alternative function syntax Static assertions Object construction improvement Allow sizeof to work on members Explicit overrides and final of classes without an explicit object Null pointer constant Control and query object alignment Strongly typed enumerations Allow garbage collected Right angle bracket implementations Explicit conversion operators Alias templates Threading facilities Unrestricted unions Tu p le types Hash tables Regular expressions General-purpose smart pointers Extensible random number facility Wrapper reference Polymorphic wrappers for function objects Type traits for metaprogramming 64-bit C++Builder for Windows C++11 support in BCC64 compiler VCL and FireMonkey Dinkumware STL for
    [Show full text]
  • The Amulet V3.0 Reference Manual Brad A
    The Amulet V3.0 Reference Manual Brad A. Myers, Ellen Borison, Alan Ferrency, Rich McDaniel, Robert C. Miller, Andrew Faulring, Bruce D. Kyle, Patrick Doane, Andy Mickish, Alex Klimovitski March, 1997 CMU-CS-95-166-R2 CMU-HCII-95-102-R2 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 This manual describes Version 3.0 of the Amulet User Interface Toolkit, and replaces all previous versions: CMU-CS-95-166-R1/ CMU-HCII-95-102-R1 (Jan, 1996), CMU-CS-95-166/ CMU-HCII-95-102 (June, 1995), and all change documents. Copyright © 1997 - Carnegie Mellon University This research was sponsored by NCCOSC under Contract No. N66001-94-C-6037, Arpa Order No. B326. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official poli- cies, either expressed or implied, of NCCOSC or the U.S. Government. Keywords: User Interface Development Environments, User Interface Management Systems, Constraints, Prototype-Instance Object System, Widgets, Object-Oriented Programming, Direct Manipulation, Input/Output, Amulet, Garnet. Abstract The Amulet User Interface Development Environment con- tains a comprehensive set of tools that make it significantly easier to design and implement highly interactive, graphical, direct manipulation user interfaces. Applications imple- mented in Amulet will run without modification on Unix, PC, and Macintosh platforms. Amulet provides a high lev- el of support, while still being Look-and-Feel independent and providing applications with tremendous flexibility. Amulet currently provides a low-level toolkit layer, which is an object-oriented, constraint-based graphical system that allows properties of graphical objects to be specified in a simple, declar- ative manner, and then maintained automatically by the system.
    [Show full text]
  • A Hardware Monitor Using Tms320c40 Analysis Module
    Disclaimer: This document was part of the DSP Solution Challenge 1995 European Team Papers. It may have been written by someone whose native language is not English. TI assumes no liability for the quality of writing and/or the accuracy of the information contained herein. Implementing a Hardware Monitor Using the TMS320C40 Analysis Module and JTAG Interface for Performance Measurements in a Multi-DSP System Authors: R. Ginthor-Kalcsics, H. Eder, G. Straub, Dr. R. Weiss EFRIE, France December 1995 SPRA308 IMPORTANT NOTICE Texas Instruments (TI™) reserves the right to make changes to its products or to discontinue any semiconductor product or service without notice, and advises its customers to obtain the latest version of relevant information to verify, before placing orders, that the information being relied on is current. TI warrants performance of its semiconductor products and related software to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. Certain application using semiconductor products may involve potential risks of death, personal injury, or severe property or environmental damage (“Critical Applications”). TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, INTENDED, AUTHORIZED, OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. Inclusion of TI products in such applications is understood to be fully at the risk of the customer. Use of TI products in such applications requires the written approval of an appropriate TI officer.
    [Show full text]
  • In Using the GNU Compiler Collection (GCC)
    Using the GNU Compiler Collection For gcc version 6.1.0 (GCC) Richard M. Stallman and the GCC Developer Community Published by: GNU Press Website: http://www.gnupress.org a division of the General: [email protected] Free Software Foundation Orders: [email protected] 51 Franklin Street, Fifth Floor Tel 617-542-5942 Boston, MA 02110-1301 USA Fax 617-542-2652 Last printed October 2003 for GCC 3.3.1. Printed copies are available for $45 each. Copyright c 1988-2016 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with the Invariant Sections being \Funding Free Software", the Front-Cover Texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included in the section entitled \GNU Free Documentation License". (a) The FSF's Front-Cover Text is: A GNU Manual (b) The FSF's Back-Cover Text is: You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development. i Short Contents Introduction ::::::::::::::::::::::::::::::::::::::::::::: 1 1 Programming Languages Supported by GCC ::::::::::::::: 3 2 Language Standards Supported by GCC :::::::::::::::::: 5 3 GCC Command Options ::::::::::::::::::::::::::::::: 9 4 C Implementation-Defined Behavior :::::::::::::::::::: 373 5 C++ Implementation-Defined Behavior ::::::::::::::::: 381 6 Extensions to
    [Show full text]
  • Designing an Embedded Operating System with the TMS320 Family of Dsps
    Designing an Embedded Operating System with the TMS320 Family of DSPs APPLICATION BRIEF: SPRA296A Astro Wu DSP Applications – TI Asia Digital Signal Processing Solutions December 1998 IMPORTANT NOTICE Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue any product or service without notice, and advise customers to obtain the latest version of relevant information to verify, before placing orders, that information being relied on is current and complete. All products are sold subject to the terms and conditions of sale supplied at the time of order acknowledgement, including those pertaining to warranty, patent infringement, and limitation of liability. TI warrants performance of its semiconductor products to the specifications applicable at the time of sale in accordance with TI's standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. CERTAIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS MAY INVOLVE POTENTIAL RISKS OF DEATH, PERSONAL INJURY, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE ('CRITICAL APPLICATIONS"). TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, AUTHORIZED, OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. INCLUSION OF TI PRODUCTS IN SUCH APPLICATIONS IS UNDERSTOOD TO BE FULLY AT THE CUSTOMER'S RISK. In order to minimize risks associated with the customer's applications, adequate design and operating safeguards must be provided by the customer to minimize inherent or procedural hazards. TI assumes no liability for applications assistance or customer product design.
    [Show full text]