UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 18808

6.1 / 3.2 EDK - Using a single global unsigned short or char in a program causes improper memory initialization

描述

Keywords: EDK, XPS, GNU, variable, BSS, char, short

Urgency: Standard

General Description:
The following program compiled in XPS does not work correctly. The CRT which initializes the BSS section causes incorrect variable initialization. The PPC counter gets loaded with 0 and then decremented to 0xFFFFFFFF such that initialization takes forever. This can be seen in GDB on hardware as it never hits the breakpoints set in main and is stuck in the CRT.

unsigned short i;
void main()
{
while (1);
}

解决方案

This is easily resolved by changing the code so that the variable "i" is initialized in the code:

unsigned short i = 0;
AR# 18808
日期 04/28/2006
状态 Archive
Type 综合文章
的页面