summaryrefslogtreecommitdiff
path: root/travis
diff options
context:
space:
mode:
authorCyrill Gorcunov <gorcunov@gmail.com>2018-11-04 23:19:02 +0300
committerCyrill Gorcunov <gorcunov@gmail.com>2018-11-11 21:43:46 +0300
commit348e653062b4f5ea89b034e8a9eac1bee929b376 (patch)
treea3425d2c5c2af9389cd0313656fbb9254505dc7c /travis
parent9233879e08ac2416ee06f61455eb0ef2e07fb35a (diff)
downloadnasm-348e653062b4f5ea89b034e8a9eac1bee929b376.tar.gz
test: nasm-t -- Add fwdoptpp
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Diffstat (limited to 'travis')
-rw-r--r--travis/test/fwdoptpp.asm146
-rw-r--r--travis/test/fwdoptpp.bin.tbin0 -> 257 bytes
-rw-r--r--travis/test/fwdoptpp.error.stderr1
-rw-r--r--travis/test/fwdoptpp.fatal.stderr1
-rw-r--r--travis/test/fwdoptpp.json39
-rw-r--r--travis/test/fwdoptpp.warning.bin.tbin0 -> 384 bytes
-rw-r--r--travis/test/fwdoptpp.warning.stderr1
7 files changed, 188 insertions, 0 deletions
diff --git a/travis/test/fwdoptpp.asm b/travis/test/fwdoptpp.asm
new file mode 100644
index 00000000..b8858006
--- /dev/null
+++ b/travis/test/fwdoptpp.asm
@@ -0,0 +1,146 @@
+%ifndef ERROR
+ %ifndef FATAL
+ %ifndef WARNING
+ %define ERROR 1
+ %endif
+ %endif
+%endif
+
+n0: jmp n1
+n1: jmp n2
+n2: jmp n3
+n3: jmp n4
+n4: jmp n5
+n5: jmp n6
+n6: jmp n7
+n7: jmp n8
+n8: jmp n9
+n9: jmp n10
+n10: jmp n11
+n11: jmp n12
+n12: jmp n13
+n13: jmp n14
+n14: jmp n15
+n15: jmp n16
+n16: jmp n17
+n17: jmp n18
+n18: jmp n19
+n19: jmp n20
+n20: jmp n21
+n21: jmp n22
+n22: jmp n23
+n23: jmp n24
+n24: jmp n25
+n25: jmp n26
+n26: jmp n27
+n27: jmp n28
+n28: jmp n29
+n29: jmp n30
+n30: jmp n31
+n31: jmp n32
+n32: jmp n33
+n33: jmp n34
+n34: jmp n35
+n35: jmp n36
+n36: jmp n37
+n37: jmp n38
+n38: jmp n39
+n39: jmp n40
+n40: jmp n41
+n41: jmp n42
+n42: jmp n43
+n43: jmp n44
+n44: jmp n45
+n45: jmp n46
+n46: jmp n47
+n47: jmp n48
+n48: jmp n49
+n49: jmp n50
+n50: jmp n51
+n51: jmp n52
+n52: jmp n53
+n53: jmp n54
+n54: jmp n55
+n55: jmp n56
+n56: jmp n57
+n57: jmp n58
+n58: jmp n59
+n59: jmp n60
+n60: jmp n61
+n61: jmp n62
+n62: jmp n63
+n63: jmp n64
+n64: jmp n65
+n65: jmp n66
+n66: jmp n67
+n67: jmp n68
+n68: jmp n69
+n69: jmp n70
+n70: jmp n71
+n71: jmp n72
+n72: jmp n73
+n73: jmp n74
+n74: jmp n75
+n75: jmp n76
+n76: jmp n77
+n77: jmp n78
+n78: jmp n79
+n79: jmp n80
+n80: jmp n81
+n81: jmp n82
+n82: jmp n83
+n83: jmp n84
+n84: jmp n85
+n85: jmp n86
+n86: jmp n87
+n87: jmp n88
+n88: jmp n89
+n89: jmp n90
+n90: jmp n91
+n91: jmp n92
+n92: jmp n93
+n93: jmp n94
+n94: jmp n95
+n95: jmp n96
+n96: jmp n97
+n97: jmp n98
+n98: jmp n99
+n99: jmp n100
+n100: jmp n101
+n101: jmp n102
+n102: jmp n103
+n103: jmp n104
+n104: jmp n105
+n105: jmp n106
+n106: jmp n107
+n107: jmp n108
+n108: jmp n109
+n109: jmp n110
+n110: jmp n111
+n111: jmp n112
+n112: jmp n113
+n113: jmp n114
+n114: jmp n115
+n115: jmp n116
+n116: jmp n117
+n117: jmp n118
+n118: jmp n119
+n119: jmp n120
+n120: jmp n121
+n121: jmp n122
+n122: jmp n123
+n123: jmp n124
+n124: jmp n125
+n125: jmp n126
+n126: jmp n127
+n127: jmp n0
+
+%if ($-$$) > 257
+ %ifdef FATAL
+ %fatal "Out of space!"
+ %elifdef ERROR
+ %error "Out of space!"
+ %elifdef WARNING
+ %warning "Out of space!"
+ %endif
+%endif
diff --git a/travis/test/fwdoptpp.bin.t b/travis/test/fwdoptpp.bin.t
new file mode 100644
index 00000000..d9ede461
--- /dev/null
+++ b/travis/test/fwdoptpp.bin.t
Binary files differ
diff --git a/travis/test/fwdoptpp.error.stderr b/travis/test/fwdoptpp.error.stderr
new file mode 100644
index 00000000..73d62864
--- /dev/null
+++ b/travis/test/fwdoptpp.error.stderr
@@ -0,0 +1 @@
+./travis/test/fwdoptpp.asm:142: error: Out of space! \ No newline at end of file
diff --git a/travis/test/fwdoptpp.fatal.stderr b/travis/test/fwdoptpp.fatal.stderr
new file mode 100644
index 00000000..14aef370
--- /dev/null
+++ b/travis/test/fwdoptpp.fatal.stderr
@@ -0,0 +1 @@
+./travis/test/fwdoptpp.asm:140: fatal: Out of space! \ No newline at end of file
diff --git a/travis/test/fwdoptpp.json b/travis/test/fwdoptpp.json
new file mode 100644
index 00000000..41d51256
--- /dev/null
+++ b/travis/test/fwdoptpp.json
@@ -0,0 +1,39 @@
+[
+ {
+ "description": "Test jmp optimization",
+ "id": "fwdoptpp",
+ "format": "bin",
+ "source": "fwdoptpp.asm",
+ "option": "-Ox",
+ "target": [
+ { "output": "fwdoptpp.bin" }
+ ]
+ },
+ {
+ "description": "Test warning directive",
+ "ref": "fwdoptpp",
+ "option": "-O0 -DWARNING",
+ "target": [
+ { "output": "fwdoptpp.warning.bin" },
+ { "stderr": "fwdoptpp.warning.stderr" }
+ ]
+ },
+ {
+ "description": "Test error directive",
+ "ref": "fwdoptpp",
+ "option": "-O0 -DERROR -o fwdoptpp.null.bin",
+ "target": [
+ { "stderr": "fwdoptpp.error.stderr" }
+ ],
+ "error": "expected"
+ },
+ {
+ "description": "Test fatal directive",
+ "ref": "fwdoptpp",
+ "option": "-O0 -DFATAL -o fwdoptpp.null.bin",
+ "target": [
+ { "stderr": "fwdoptpp.fatal.stderr" }
+ ],
+ "error": "expected"
+ }
+]
diff --git a/travis/test/fwdoptpp.warning.bin.t b/travis/test/fwdoptpp.warning.bin.t
new file mode 100644
index 00000000..808c5a28
--- /dev/null
+++ b/travis/test/fwdoptpp.warning.bin.t
Binary files differ
diff --git a/travis/test/fwdoptpp.warning.stderr b/travis/test/fwdoptpp.warning.stderr
new file mode 100644
index 00000000..b861e96a
--- /dev/null
+++ b/travis/test/fwdoptpp.warning.stderr
@@ -0,0 +1 @@
+./travis/test/fwdoptpp.asm:144: warning: Out of space! [-w+user] \ No newline at end of file