- 목적파일 구조는 8-비트 와 32비트 구조를 가진 다양한 CPU들을 지원한다.

    Size  Alignment        Purpose

Elf32_Addr    4    4    Unsigned program address

Elf32_Half     2    2     Unsigned medium integer

Elf32_Off       4    4    Unsigned file offset

Elf32_Sword   4   4    Signed large integer

Elf32_Word    4    4    Unsigned large integer

unsgined char   1 1  unsgined small integer

 

 

include/uapi/linux/elf.h

 

 

 

 

rvct_assembler_guide

 

arm-linux-androideabi-as -o hello.o hello.S
arm-linux-androideabi-ld -s -o hello hello.o

 

uboot/arch/arm/cpu/armv7  의 start.S

 

어셈의 종류로는 (MASM, SPIM, GAS)

 

라즈베리파이에서 어셈블러 gdb

pi@raspberrypi ~/asm $ as --gstabs+ hello.asm -o hello.
pi@raspberrypi ~/asm $ ld hello.o -o hello1

hello1 파일 생성

 pi@raspberrypi ~/asm $ gdb hello
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/pi/asm/hello...(no debugging symbols found)...done.

 

 

 

[변수와 레지스터 값]
info locals 지역변수들을 보여준다.
info variables 전역 변수 리스트를 확인할 수 있다.

p(print)
p [variable] 변수 값 출력
p [function] 함수의 주소

p $[register] 레지스터 출력
p $eax 등등
info registers
info all-registers

 


 

arm-linux-gnueabihf-gcc 와 arm-linux-gnueabi-gcc 차이

http://hybridego.net/entry/armlinuxgnueabihfgcc-%EC%99%80-armlinuxgnueabigcc-%EC%B0%A8%EC%9D%B4

 

 

gas - http://korea.gnu.org/manual/release/as/as-ko_7.html

 

GNU 어셈블러 지시자 정리

falinux - http://forum.falinux.com/zbxe/index.php?document_srl=550700 

 

 glbl  https://kldp.org/node/96304

x86 에서 asm  http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/Assembly/Documents/ProgrammingGroundUp/makefirstprog.html

 

arm debug

http://tydud.tistory.com/125

레이블

 -

android native 디버그?

http://zeph1e.tistory.com/13

 

 

PCSPIM 설치 및 사용법

http://blog.naver.com/lovelydai/188188533

+ Recent posts