Skip to content
Snippets Groups Projects
  • Haavard Skinnemoen's avatar
    28c699ef
    AVR32: Build position-independent u-boot · 28c699ef
    Haavard Skinnemoen authored
    
    Add -fPIC -mno-init-got to the avr32-specific CFLAGS to make u-boot
    position independent. This will make relocation a lot easier.
    
    -mno-init-got means that gcc shouldn't emit code to load the GOT
    address into r6 in every function prologue. We do it once and for
    all in the early startup assembly code, so enabling this option
    makes u-boot a bit faster and smaller.
    
    The assembly parts have always been position-independent, so no code
    changes should be necessary.
    
    Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
    28c699ef
    History
    AVR32: Build position-independent u-boot
    Haavard Skinnemoen authored
    
    Add -fPIC -mno-init-got to the avr32-specific CFLAGS to make u-boot
    position independent. This will make relocation a lot easier.
    
    -mno-init-got means that gcc shouldn't emit code to load the GOT
    address into r6 in every function prologue. We do it once and for
    all in the early startup assembly code, so enabling this option
    makes u-boot a bit faster and smaller.
    
    The assembly parts have always been position-independent, so no code
    changes should be necessary.
    
    Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
avr32_config.mk 952 B
#
# (C) Copyright 2000-2002
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this
# project.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#

PLATFORM_RELFLAGS	+= -ffixed-r5 -fPIC -mno-init-got -mrelax
PLATFORM_LDFLAGS	+= --relax