mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-02-11 17:10:45 +08:00
test: nasm-t -- Add multisection
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
This commit is contained in:
parent
7fd2389637
commit
7af13e0466
BIN
travis/test/multisection-elf32.o.t
Normal file
BIN
travis/test/multisection-elf32.o.t
Normal file
Binary file not shown.
1
travis/test/multisection-elf32.stderr
Normal file
1
travis/test/multisection-elf32.stderr
Normal file
@ -0,0 +1 @@
|
||||
./travis/test/multisection.asm:84: warning: uninitialized space declared in non-BSS section `.hmm': zeroing
|
BIN
travis/test/multisection-elf64.o.t
Normal file
BIN
travis/test/multisection-elf64.o.t
Normal file
Binary file not shown.
1
travis/test/multisection-elf64.stderr
Normal file
1
travis/test/multisection-elf64.stderr
Normal file
@ -0,0 +1 @@
|
||||
./travis/test/multisection.asm:84: warning: uninitialized space declared in non-BSS section `.hmm': zeroing
|
96
travis/test/multisection.asm
Normal file
96
travis/test/multisection.asm
Normal file
@ -0,0 +1,96 @@
|
||||
;Testname=aout; Arguments=-faout -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=aoutb; Arguments=-faoutb -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=as86; Arguments=-fas86 -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=elf32; Arguments=-felf32 -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=elf64; Arguments=-felf64 -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=obj; Arguments=-fobj -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=rdf; Arguments=-frdf -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=win32; Arguments=-fwin32 -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
;Testname=win64; Arguments=-fwin64 -olnxhello.o -Ox; Files=stdout stderr lnxhello.o
|
||||
|
||||
; To test where code that is placed before any explicit SECTION
|
||||
; gets placed, and what happens if a .text section has an ORG
|
||||
;statement, uncomment the following lines.
|
||||
;
|
||||
; times 10h nop
|
||||
;
|
||||
;section .text
|
||||
;org 0x300
|
||||
; times 20h inc ax
|
||||
|
||||
; let's see which of these sections can be placed in the specified order.
|
||||
|
||||
section .appspecific
|
||||
section .data
|
||||
section .stringdata
|
||||
section .mytext
|
||||
section .code
|
||||
section .extra_code
|
||||
|
||||
|
||||
section .stringdata
|
||||
mystr1: db "Hello, this is string 1", 13, 10, '$'
|
||||
|
||||
section .extra_code
|
||||
;org 0x200
|
||||
bits 16
|
||||
more:
|
||||
mov si, asciz1
|
||||
mov ah, 0x0E
|
||||
xor bx, bx
|
||||
.print:
|
||||
lodsb
|
||||
test al, al
|
||||
jz .end
|
||||
int 0x10
|
||||
jmp short .print
|
||||
.end:
|
||||
|
||||
xor ax, ax
|
||||
int 0x16
|
||||
|
||||
mov ax, 0x4c00
|
||||
int 0x21
|
||||
|
||||
section .appspecific
|
||||
asciz1: db "This is string 2", 0
|
||||
|
||||
section .code
|
||||
;org 0x100
|
||||
bits 16
|
||||
|
||||
start:
|
||||
mov dx, mystr1
|
||||
mov ah, 9
|
||||
int 0x21
|
||||
|
||||
xor ax, ax
|
||||
int 0x16
|
||||
|
||||
jmp more
|
||||
|
||||
section .text
|
||||
xor eax,eax
|
||||
times 50h nop
|
||||
|
||||
section .mytext
|
||||
|
||||
xor ebx,ebx
|
||||
|
||||
section .data
|
||||
db 95h,95h,95h,95h,95h,95h,95h,95h
|
||||
|
||||
section .hmm
|
||||
resd 2
|
||||
|
||||
section .bss
|
||||
resd 8
|
||||
|
||||
section .final1
|
||||
inc ax
|
||||
|
||||
section .final2
|
||||
inc bx
|
||||
|
||||
section .final3
|
||||
inc cx
|
BIN
travis/test/multisection.bin.t
Normal file
BIN
travis/test/multisection.bin.t
Normal file
Binary file not shown.
31
travis/test/multisection.json
Normal file
31
travis/test/multisection.json
Normal file
@ -0,0 +1,31 @@
|
||||
[
|
||||
{
|
||||
"description": "Test mutlisecions (bin)",
|
||||
"id": "multisection",
|
||||
"format": "bin",
|
||||
"source": "multisection.asm",
|
||||
"option": "-Ox",
|
||||
"target": [
|
||||
{ "output": "multisection.bin" },
|
||||
{ "stderr": "multisection.stderr" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Test mutlisecions (elf32)",
|
||||
"ref": "multisection",
|
||||
"format": "elf32",
|
||||
"target": [
|
||||
{ "output": "multisection-elf32.o" },
|
||||
{ "stderr": "multisection-elf32.stderr" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Test mutlisecions (elf64)",
|
||||
"ref": "multisection",
|
||||
"format": "elf64",
|
||||
"target": [
|
||||
{ "output": "multisection-elf64.o" },
|
||||
{ "stderr": "multisection-elf64.stderr" }
|
||||
]
|
||||
}
|
||||
]
|
1
travis/test/multisection.stderr
Normal file
1
travis/test/multisection.stderr
Normal file
@ -0,0 +1 @@
|
||||
./travis/test/multisection.asm:84: warning: uninitialized space declared in .hmm section: zeroing
|
Loading…
Reference in New Issue
Block a user