• Menu
  • Product
  • Email
  • PDF
  • Order now
  • C6000-to-C7000 Migration

    • SPRUIG5E January   2018  – March 2023 TDA4VM , TDA4VM-Q1

       

  • CONTENTS
  • SEARCH
  • C6000-to-C7000 Migration
  1.   Abstract
  2. 1About This Document
    1. 1.1 Related Documents
    2. 1.2 Trademarks
  3. 2Migrating C Source from C6000 to C7000
    1. 2.1  Compiler Options
    2. 2.2  Native Vector Data Types
    3. 2.3  Type Qualifiers: near and far
    4. 2.4  64-bit long Type
    5. 2.5  References to Control Registers
    6. 2.6  Memory-Mapped Peripherals
    7. 2.7  Run-Time Support
    8. 2.8  Contents of Migration Header File c6x_migration.h
      1. 2.8.1 Supported Macros
      2. 2.8.2 Non-Supported Macros
      3. 2.8.3 Legacy Data Types
      4. 2.8.4 Legacy Intrinsics
    9. 2.9  Galois Field Multiply Instructions
    10. 2.10 Performance Considerations for Migrated Code
      1. 2.10.1 UNROLL Pragma
      2. 2.10.2 Subvector Access
      3. 2.10.3 16x16 and 16x32 Bit Multiplies
      4. 2.10.4 __x128_t Type
      5. 2.10.5 Unsigned Array Offsets
      6. 2.10.6 Streaming Engine and Streaming Address Generator
      7. 2.10.7 Additional Optimization Guidance
  4. 3Host Emulation
  5. 4Revision History
    1.     29
    2.     30
  6. IMPORTANT NOTICE
search No matches found.
  • Full reading width
    • Full reading width
    • Comfortable reading width
    • Expanded reading width
  • Card for each section
  • Card with all content

 

USER'S GUIDE

C6000-to-C7000 Migration

Abstract

This document provides information to assist you in migrating existing C6000™ source code to code written for the C7000™ (C7x) processor family. This will allow it to be compiled by the C7000 compiler. This process requires no additional tools; it only requires attention to how compiler features differ between the C6000 and C7000 processor families.

1 About This Document

Changes described in this document should be made to source code originally written for the C6000 family in order to migrate to C7000 (C7x) processors. In particular, this document describes aspects of source code that you will need to evaluate and manually migrate.

This document also describes the support provided by the c6x_migration.h header file, which is included in C7000 Run-Time Support Library. You may include this file to facilitate compilation. For applications that do not have hardcoded references to addresses, control registers, or memory-mapped peripherals, #including this header file should be sufficient to build and run.

This document is not intended to be a compiler user’s guide for either the C6000 or C7000 compiler toolchain. Familiarity with the C6000 compiler is therefore assumed.

There are two major C6000 programming paradigms that are not supported by the C7000 compiler and are therefore not discussed in this document:

  • C6000 linear assembly
  • C6000 hand-coded assembly

Existing C6000 source code written in either of these formats will need to be rewritten either in C or in C7000 assembly in order to be compiled by the C7000 compiler.

1.1 Related Documents

The following documents will provide related information for the C7x:

  • C7000 C/C++ Optimizing Compiler User's Guide (SPRUIG8)
  • C7000 C/C++ Optimization Guide (SPRUIV4)
  • C6000 C/C++ Optimizing Compiler User's Guide (SPRUI04)
  • C7000 Embedded Application Binary Interface (EABI) Reference Guide (SPRUIG4)
  • C7000 Host Emulation User's Guide (SPRUIG6)
  • VCOP Kernel-C to C7000 Migration Tool User's Guide (SPRUIG3)

 

Texas Instruments

© Copyright 1995-2025 Texas Instruments Incorporated. All rights reserved.
Submit documentation feedback | IMPORTANT NOTICE | Trademarks | Privacy policy | Cookie policy | Terms of use | Terms of sale