Jump to main content
MPLAB XC8 C Compiler User’s Guide for PIC MCU
MPLAB XC8 C Compiler User’s Guide for PIC MCU
  1. Home
  2. 3 How Tos
  3. 3.5 Understanding the Compilation Process
  4. 3.5.19 What Optimizations Are Employed by the Compiler?

  • Notice to Development Tools Customers
  • 1 Preface
  • 2 Compiler Overview
  • 3 How Tos
    • 3.1 Installing and Activating the Compiler
    • 3.2 Invoking the Compiler
    • 3.3 Writing Source Code
    • 3.4 Getting My Application To Do What I Want
    • 3.5 Understanding the Compilation Process
      • 3.5.1 What’s the Difference Between a licensed and unlicensed compiler?
      • 3.5.2 How Can I Make My Code Smaller?
      • 3.5.3 How Can I Reduce RAM Usage?
      • 3.5.4 How Can I Make My Code Faster?
      • 3.5.5 How Can I Speed Up Programming Times?
      • 3.5.6 How Does the Compiler Place Everything in Memory?
      • 3.5.7 How Can I Make My Interrupt Routine Faster?
      • 3.5.8 How Big Can C Variables Be?
      • 3.5.9 How Do I Utilize/Allocate the RAM Banks on My Device?
      • 3.5.10 How Do I Utilize the Linear Memory on Enhanced Mid-range PIC Devices?
      • 3.5.11 What Devices are Supported by the Compiler?
      • 3.5.12 How Do I Know What Code the Compiler Is Producing?
      • 3.5.13 How Can I Tell How Big a Function Is?
      • 3.5.14 How Do I Know Which Resources Are Being Used by Each Function?
      • 3.5.15 How Do I Find Out Where Variables and Functions Have Been Positioned?
      • 3.5.16 Why Are Some Objects Positioned Into Memory That I Reserved?
      • 3.5.17 How Do I Know How Much Memory Is Still Available?
      • 3.5.18 How Do I Use Library Files in My Project?
      • 3.5.19 What Optimizations Are Employed by the Compiler?
      • 3.5.20 Why Do I Get Out-of-memory Errors When I Select a Debugger?
      • 3.5.21 How Do I Know Which Stack Model the Compiler Has Assigned to a Function?
      • 3.5.22 How Do I Know What Value Has Been Programmed in the Configuration Bits or ID Location?
      • 3.5.23 How Do I Stop My Project’s Checksum From Changing?
    • 3.6 Fixing Code That Does Not Work
  • 4 Command-line Driver
  • 5 C Language Features
  • 6 Macro Assembler
  • 7 Linker
  • 8 Utilities
  • 9 Library Functions
  • 10 Error and Warning Messages
  • 11 Implementation-Defined Behavior
  • 12 Document Revision History
  • Microchip Information

3.5.19 What Optimizations Are Employed by the Compiler?

Optimizations are employed at both the C and assembly level of compilation. These are described in Optimizations and Assembly-Level Optimizations respectively. The options that control optimization are described in Options for Controlling Optimization.

About

Company
Careers
Contact Us
Media Center
Investor Relations
Corporate Responsibility

Support

Microchip Forums
AVR Freaks
Design Help
Technical Support
Export Control Data
PCNs

Quick Links

microchipDIRECT.com
Microchip University
myMicrochip
Blogs
Reference Designs
Parametric Search
Microchip Logo

Microchip Technology Inc.

2355 West Chandler Blvd.

Chandler, Arizona, USA

Microchip Facebook
Microchip LinkedIn
Microchip Twitter
Microchip Instagram
Microchip Weibo

© Copyright 1998-2024 Microchip Technology Inc. All rights reserved. Shanghai ICP Recordal No.09049794

Terms Of Use
Privacy Notice
Legal
Your Privacy Choices California Consumer Privacy Act (CCPA) Opt-Out Icon