x86: Always disallow double word suffix with word general register
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / general.l
index c080f90c4ff593ee3a3e464fd38b59a0e32ac494..470527716adca972a0dfb0807d092db39c4f391e 100644 (file)
 .*: Assembler messages:
-.*:10: Warning:.*
-.*:12: Warning:.*
-.*:19: Warning:.*
-.*:22: Warning:.*
-.*:81: Warning:.*
-.*:82: Warning:.*
-.*:83: Warning:.*
-.*:84: Warning:.*
-.*:85: Warning:.*
-.*:86: Warning:.*
-.*:87: Warning:.*
-.*:88: Warning:.*
-.*:89: Warning:.*
-.*:90: Warning:.*
-.*:91: Warning:.*
-.*:92: Warning:.*
-.*:93: Warning:.*
-.*:94: Warning:.*
-.*:95: Warning:.*
-.*:96: Warning:.*
-.*:97: Warning:.*
-.*:98: Warning:.*
-.*:99: Warning:.*
-.*:100: Warning:.*
-.*:101: Warning:.*
-.*:135: Warning:.*
-.*:163: Warning:.*
-.*:165: Warning:.*
-.*:167: Warning:.*
-.*:169: Warning:.*
-.*:171: Warning:.*
-.*:177: Warning:.*
-.*:179: Warning:.*
-.*:181: Warning:.*
-.*:183: Warning:.*
-.*:185: Warning:.*
+.*:7: Warning:.*
+.*:9: Warning:.*
+.*:11: Warning:.*
+.*:13: Warning:.*
+.*:15: Warning:.*
+.*:21: Warning:.*
+.*:23: Warning:.*
+.*:25: Warning:.*
+.*:27: Warning:.*
+.*:29: Warning:.*
+.*:48: Warning:.*
+.*:51: Warning:.*
+.*:124: Warning:.*
+.*:125: Warning:.*
+.*:126: Warning:.*
+.*:127: Warning:.*
+.*:128: Warning:.*
+.*:129: Warning:.*
+.*:130: Warning:.*
+.*:131: Warning:.*
+.*:132: Warning:.*
+.*:133: Warning:.*
+.*:134: Warning:.*
+.*:139: Warning:.*
+.*:140: Warning:.*
+.*:141: Warning:.*
+.*:142: Warning:.*
+.*:143: Warning:.*
+.*:144: Warning:.*
+.*:224: Warning:.*
+.*:233: Warning:.*
+.*:234: Warning:.*
+.*:238: Warning:.*
+.*:239: Warning:.*
    1                           .psize 0
    2                           .text
-   3                           # test various segment reg insns
-   4 0000 1E                           push    %ds
-   5 0001 1E                           pushl   %ds
-   6 0002 1F                           pop     %ds
-   7 0003 1F                           popl    %ds
-   8 0004 8CD8                         mov     %ds,%eax
-   9 0006 8CD8                         movl    %ds,%eax
-  10 0008 8CD8                         movl    %ds,%ax
-.*Warning:.*
-  11 000a 8ED8                         mov     %eax,%ds
-  12 000c 8ED8                         movl    %ax,%ds
-.*Warning:.*
-  13 000e 8ED8                         movl    %eax,%ds
-  14                           
-  15 0010 661E                         pushw   %ds
-  16 0012 661F                         popw    %ds
-  17 0014 668CD8                       mov     %ds,%ax
-  18 0017 668CD8                       movw    %ds,%ax
-  19 001a 668CD8                       movw    %ds,%eax
-.*Warning:.*
-  20 001d 8ED8                         mov     %ax,%ds
-  21 001f 8ED8                         movw    %ax,%ds
-  22 0021 8ED8                         movw    %eax,%ds
-.*Warning:.*
-  23                           
-  24                           # test various pushes
-  25 0023 6A0A                         pushl   \$10
-  26 0025 666A0A                       pushw   \$10
-  27 0028 6A0A                         push    \$10
-  28 002a 68E80300 00                  pushl   \$1000
-  29 002f 6668E803                     pushw   \$1000
-  30 0033 68E80300 00                  push    \$1000
-  31 0038 FF355700 0000                pushl   1f
-  32 003e 66FF3557 000000              pushw   1f
-  33 0045 FF355700 0000                push    1f
-  34 004b FFB30C00 0000                push    \(1f-.\)\(%ebx\)
-  35 0051 FF350600 0000                push    1f-.
-  36                           # these, and others like them should have no operand size prefix
-  37 0057 0F00D1               1:      lldt    %cx
-  38 005a 0F01F0                       lmsw    %ax
-  39                           
-  40                           # Just to make sure these don't become illegal due to over-enthusiastic
-  41                           # register checking
-  42 005d 660FBEF8                     movsbw  %al,%di
-  43 0061 0FBEC8                       movsbl  %al,%ecx
-  44 0064 0FBFC8                       movswl  %ax,%ecx
-  45 0067 660FB6F8                     movzbw  %al,%di
-  46 006b 0FB6C8                       movzbl  %al,%ecx
-  47 006e 0FB7C8                       movzwl  %ax,%ecx
-  48                           
-  49 0071 EC                           in      %dx,%al
-  50 0072 66ED                         in      %dx,%ax
-  51 0074 ED                           in      %dx,%eax
-  52 0075 EC                           in      \(%dx\),%al
-  53 0076 66ED                         in      \(%dx\),%ax
-  54 0078 ED                           in      \(%dx\),%eax
-  55 0079 EC                           inb     %dx,%al
-  56 007a 66ED                         inw     %dx,%ax
-  57 007c ED                           inl     %dx,%eax
-  58 007d EC                           inb     %dx
-  59 007e 66ED                         inw     %dx
-  60 0080 ED                           inl     %dx
-  61 0081 E4FF                         inb     \$255
-  62 0083 66E502                       inw     \$2
-  63 0086 E504                         inl     \$4
-  64 0088 EF                           outl    %eax,%dx
-  65 0089 E62A                         out     %al, \$42
-  66 008b 66E50D                       in      \$13, %ax
-  67                           # These are used in AIX.
-  68 008e 66ED                         inw     \(%dx\)
-  69 0090 66EF                         outw    \(%dx\)
-  70                           
-  71 0092 A4                           movsb
-  72 0093 66A7                         cmpsw
-  73 0095 AF                           scasl
-  74 0096 D7                           xlatb
-  75 0097 2EA5                         movsl   %cs:\(%esi\),%es:\(%edi\)
-  76 0099 0F9303                       setae   \(%ebx\)
-  77 009c 0F9303                       setaeb  \(%ebx\)
-  78 009f 0F93C0                       setae   %al
-  79                           
-  80                           #these should give warnings
-  81 00a2 0C01                         orb     \$1,%ax
-.*Warning:.*
-  82 00a4 0C01                         orb     \$1,%eax
-.*Warning:.*
-  83 00a6 80CB01                       orb     \$1,%bx
-.*Warning:.*
-  84 00a9 80CB01                       orb     \$1,%ebx
-.*Warning:.*
-  85 00ac D9C1                         fldl    %st\(1\)
-.*Warning:.*
-  86 00ae DDD2                         fstl    %st\(2\)
-.*Warning:.*
-  87 00b0 DDDB                         fstpl   %st\(3\)
-.*Warning:.*
-  88 00b2 D8D4                         fcoml   %st\(4\)
-.*Warning:.*
-  89 00b4 D8DD                         fcompl  %st\(5\)
-.*Warning:.*
-  90 00b6 DEC1                         faddp   %st\(1\),%st
-.*Warning:.*
-  91 00b8 DECA                         fmulp   %st\(2\),%st
-.*Warning:.*
-  92 00ba DEE3                         fsubp   %st\(3\),%st
-.*Warning:.*
-  93 00bc DEEC                         fsubrp  %st\(4\),%st
-.*Warning:.*
-  94 00be DEF5                         fdivp   %st\(5\),%st
-.*Warning:.*
-  95 00c0 DEFE                         fdivrp  %st\(6\),%st
-.*Warning:.*
-  96 00c2 DEC1                         fadd
-.*Warning:.*
-  97 00c4 DEE1                         fsub
-.*Warning:.*
-  98 00c6 DEC9                         fmul
-.*Warning:.*
-  99 00c8 DEF1                         fdiv
-.*Warning:.*
- 100 00ca DEE9                         fsubr
-.*Warning:.*
- 101 00cc DEF9                         fdivr
-.*Warning:.*
- 102                           #these should all be legal
- 103 00ce 0FA31556 341200              btl     %edx, 0x123456
- 104 00d5 0FA3D0                       btl     %edx, %eax
- 105 00d8 0C01                         orb     \$1,%al
- 106 00da 80CB01                       orb     \$1,%bl
- 107 00dd A1110000 00                  movl    17,%eax
- 108 00e2 A1110000 00                  mov     17,%eax
- 109 00e7 66ED                         inw     %dx,%ax
- 110 00e9 ED                           inl     %dx,%eax
- 111 00ea 66ED                         inw     \(%dx\),%ax
- 112 00ec ED                           inl     \(%dx\),%eax
- 113 00ed EC                           in      \(%dx\),%al
- 114 00ee 66ED                         in      \(%dx\),%ax
- 115 00f0 ED                           in      \(%dx\),%eax
- 116 00f1 0FB61437                     movzbl  \(%edi,%esi\),%edx
- 117 00f5 0FB6451C                     movzbl  28\(%ebp\),%eax
- 118 00f9 0FB6C0                       movzbl  %al,%eax
- 119 00fc 0FB6F1                       movzbl  %cl,%esi
- 120 00ff 26D7                         xlat    %es:\(%ebx\)
- 121 0101 D7                           xlat
- 122 0102 D7                           xlatb
- 123 0103 DDD8                 1:      fstp    %st\(0\)
- 124 0105 E2FC                         loop    1b
- 125 0107 F6F1                         divb    %cl 
- 126 0109 66F7F1                       divw    %cx 
- 127 010c F7F1                         divl    %ecx
- 128 010e F6F1                         div     %cl
- 129 0110 66F7F1                       div     %cx
- 130 0113 F7F1                         div     %ecx
- 131 0115 F6F1                         div     %cl,%al
- 132 0117 66F7F1                       div     %cx,%ax
- 133 011a F7F1                         div     %ecx,%eax
- 134 011c 8EDE                         mov     %si,%ds
- 135 011e 8EDE                         movl    %si,%ds         # warning here
-.*Warning:.*
- 136 0120 1E                           pushl   %ds
- 137 0121 1E                           push    %ds
- 138 0122 A0000000 00                  mov     0,%al
- 139 0127 66A10000 0100                mov     0x10000,%ax
- 140 012d 89C3                         mov     %eax,%ebx
- 141 012f 9C                           pushf
- 142 0130 9C                           pushfl
- 143 0131 669C                         pushfw
- 144 0133 9D                           popf
- 145 0134 9D                           popfl
- 146 0135 669D                         popfw
- 147 0137 89341D00 000000              mov     %esi,\(,%ebx,1\)
- 148 013e 80250000 00007F              andb    \$~0x80,foo
- 149                           
- 150                           #check 16-bit code auto address prefix
- 151                           .code16gcc
- 152 0145 67668D95 00FFFFFF            leal    -256\(%ebp\),%edx
- 153 014d 6788857F FFFFFF              mov     %al,-129\(%ebp\)
- 154 0154 67886580                     mov     %ah,-128\(%ebp\)
- 155 0158 67668D9D 20F9FFFF            leal    -1760\(%ebp\),%ebx
- 156 0160 67668984 248C0000            movl    %eax,140\(%esp\)
- 156      00
- 157                           
- 158                           .code32
- 159                           .extern xxx
- 160 0169 EB98                         jmp     1b
- 161 016b E9FCFFFF FF                  jmp     xxx
- 162 0170 FF250000 0000                jmp     \*xxx
- 163 0176 FF250000 0000                jmp     xxx\(,1\)
-.*Warning:.*
- 164 017c FFE7                         jmp     \*%edi
- 165 017e FFE7                         jmp     %edi
-.*Warning:.*
- 166 0180 FF27                         jmp     \*\(%edi\)
- 167 0182 FF27                         jmp     \(%edi\)
-.*Warning:.*
- 168 0184 FF2CBD00 000000              ljmp    \*xxx\(,%edi,4\)
- 169 018b FF2CBD00 000000              ljmp    xxx\(,%edi,4\)
-.*Warning:.*
- 170 0192 FF2D0000 0000                ljmp    \*xxx
- 171 0198 FF2D0000 0000                ljmp    xxx\(,1\)
-.*Warning:.*
- 172 019e EA000000 003412              ljmp    \$0x1234,\$xxx
- 173                           
- 174 01a5 E859FFFF FF                  call    1b
- 175 01aa E8FCFFFF FF                  call    xxx
- 176 01af FF150000 0000                call    \*xxx
- 177 01b5 FF150000 0000                call    xxx\(,1\)
-.*Warning:.*
- 178 01bb FFD7                         call    \*%edi
- 179 01bd FFD7                         call    %edi
-.*Warning:.*
- 180 01bf FF17                         call    \*\(%edi\)
- 181 01c1 FF17                         call    \(%edi\)
-.*Warning:.*
- 182 01c3 FF1CBD00 000000              lcall   \*xxx\(,%edi,4\)
- 183 01ca FF1CBD00 000000              lcall   xxx\(,%edi,4\)
-.*Warning:.*
- 184 01d1 FF1D0000 0000                lcall   \*xxx
- 185 01d7 FF1D0000 0000                lcall   xxx\(,1\)
-.*Warning:.*
- 186 01dd 9A000000 003412              lcall   \$0x1234,\$xxx
- 187                           
- 188                                   # Force a good alignment.
- 189 01e4 00000000 00000000            .p2align        4,0
- 189      00000000 
+   3                           #test jumps and calls
+   4 0000 EBFE                 1:      jmp     1b
+   5 0002 E9((FC|F9)FFFF FF|000000 00)                 jmp     xxx
+   6 0007 FF250000 0000                jmp     \*xxx
+   7 000d FF250000 0000                jmp     xxx\(,1\)
+.*Warning:.*
+   8 0013 FFE7                         jmp     \*%edi
+   9 0015 FFE7                         jmp     %edi
+.*Warning:.*
+  10 0017 FF27                         jmp     \*\(%edi\)
+  11 0019 FF27                         jmp     \(%edi\)
+.*Warning:.*
+  12 001b FF2CBD00 000000              ljmp    \*xxx\(,%edi,4\)
+  13 0022 FF2CBD00 000000              ljmp    xxx\(,%edi,4\)
+.*Warning:.*
+  14 0029 FF2D0000 0000                ljmp    \*xxx
+  15 002f FF2D0000 0000                ljmp    xxx\(,1\)
+.*Warning:.*
+  16 0035 EA000000 003412              ljmp    \$0x1234,\$xxx
+  17                           
+  18 003c E8BFFFFF FF                  call    1b
+  19 0041 E8((FC|BA)FFFF FF|000000 00)                 call    xxx
+  20 0046 FF150000 0000                call    \*xxx
+  21 004c FF150000 0000                call    xxx\(,1\)
+.*Warning:.*
+  22 0052 FFD7                         call    \*%edi
+  23 0054 FFD7                         call    %edi
+.*Warning:.*
+  24 0056 FF17                         call    \*\(%edi\)
+  25 0058 FF17                         call    \(%edi\)
+.*Warning:.*
+  26 005a FF1CBD00 000000              lcall   \*xxx\(,%edi,4\)
+  27 0061 FF1CBD00 000000              lcall   xxx\(,%edi,4\)
+.*Warning:.*
+  28 0068 FF1D0000 0000                lcall   \*xxx
+  29 006e FF1D0000 0000                lcall   xxx\(,1\)
+.*Warning:.*
+  30 0074 9A000000 003412              lcall   \$0x1234,\$xxx
+  31                           
+  32                           # test various segment reg insns
+  33 007b 1E                           push    %ds
+  34 007c 1E                           pushl   %ds
+  35 007d 1F                           pop     %ds
+  36 007e 1F                           popl    %ds
+  37 007f 8CD8                         mov     %ds,%eax
+  38 0081 8CD8                         movl    %ds,%eax
+  39 0083 8CDB                         movl    %ds,%ebx
+  40 0085 8ED8                         mov     %eax,%ds
+  41 0087 8EDB                         movl    %ebx,%ds
+  42 0089 8ED8                         movl    %eax,%ds
+  43                           
+  44 008b 661E                         pushw   %ds
+  45 008d 661F                         popw    %ds
+  46 008f 668CD8                       mov     %ds,%ax
+  47 0092 668CD8                       movw    %ds,%ax
+  48 0095 668CD8                       movw    %ds,%eax
+.*Warning:.*
+  49 0098 8ED8                         mov     %ax,%ds
+  50 009a 8ED8                         movw    %ax,%ds
+  51 009c 8ED8                         movw    %eax,%ds
+.*Warning:.*
+  52                           
+  53                           # test various pushes
+  54 009e 6A0A                         pushl   \$10
+  55 00a0 666A0A                       pushw   \$10
+  56 00a3 6A0A                         push    \$10
+  57 00a5 68E80300 00                  pushl   \$1000
+  58 00aa 6668E803                     pushw   \$1000
+  59 00ae 68E80300 00                  push    \$1000
+  60 00b3 FF35D200 0000                pushl   1f
+  61 00b9 66FF35D2 000000              pushw   1f
+  62 00c0 FF35D200 0000                push    1f
+  63 00c6 FFB30C00 0000                push    \(1f-.\)\(%ebx\)
+  64 00cc FF350600 0000                push    1f-.
+  65                           # these, and others like them should have no operand size prefix
+  66 00d2 0F00D1               1:      lldt    %cx
+  67 00d5 0F01F0                       lmsw    %ax
+  68                           
+  69                           # Just to make sure these don't become illegal due to over-enthusiastic
+  70                           # register checking
+  71 00d8 660FBEF8                     movsbw  %al,%di
+  72 00dc 0FBEC8                       movsbl  %al,%ecx
+  73 00df 0FBFC8                       movswl  %ax,%ecx
+  74 00e2 660FB6F8                     movzbw  %al,%di
+  75 00e6 0FB6C8                       movzbl  %al,%ecx
+  76 00e9 0FB7C8                       movzwl  %ax,%ecx
+  77                           
+  78 00ec EC                           in      %dx,%al
+  79 00ed 66ED                         in      %dx,%ax
+  80 00ef ED                           in      %dx,%eax
+  81 00f0 EC                           in      \(%dx\),%al
+  82 00f1 66ED                         in      \(%dx\),%ax
+  83 00f3 ED                           in      \(%dx\),%eax
+  84 00f4 EC                           inb     %dx,%al
+  85 00f5 66ED                         inw     %dx,%ax
+  86 00f7 ED                           inl     %dx,%eax
+  87 00f8 EC                           inb     %dx
+  88 00f9 66ED                         inw     %dx
+  89 00fb ED                           inl     %dx
+  90 00fc E4FF                         inb     \$255
+  91 00fe 66E502                       inw     \$2
+  92 0101 E504                         inl     \$4
+  93 0103 66E50D                       in      \$13, %ax
+  94 0106 EE                           out     %al,%dx
+  95 0107 66EF                         out     %ax,%dx
+  96 0109 EF                           out     %eax,%dx
+  97 010a EE                           out     %al,\(%dx\)
+  98 010b 66EF                         out     %ax,\(%dx\)
+  99 010d EF                           out     %eax,\(%dx\)
+ 100 010e EE                           outb    %al,%dx
+ 101 010f 66EF                         outw    %ax,%dx
+ 102 0111 EF                           outl    %eax,%dx
+ 103 0112 EE                           outb    %dx
+ 104 0113 66EF                         outw    %dx
+ 105 0115 EF                           outl    %dx
+ 106 0116 E6FF                         outb    \$255
+ 107 0118 66E702                       outw    \$2
+ 108 011b E704                         outl    \$4
+ 109 011d 66E70D                       out     %ax, \$13
+ 110                           # These are used in AIX.
+ 111 0120 66ED                         inw     \(%dx\)
+ 112 0122 66EF                         outw    \(%dx\)
+ 113                           
+ 114 0124 A4                           movsb
+ 115 0125 66A7                         cmpsw
+ 116 0127 AF                           scasl
+ 117 0128 D7                           xlatb
+ 118 0129 2EA5                         movsl   %cs:\(%esi\),%es:\(%edi\)
+ 119 012b 0F9303                       setae   \(%ebx\)
+ 120 012e 0F9303                       setaeb  \(%ebx\)
+ 121 0131 0F93C0                       setae   %al
+ 122                           
+ 123                           #these should give warnings
+ 124 0134 0C01                         orb     \$1,%ax
+.*Warning:.*
+ 125 0136 0C01                         orb     \$1,%eax
+.*Warning:.*
+ 126 0138 80CB01                       orb     \$1,%bx
+.*Warning:.*
+ 127 013b 80CB01                       orb     \$1,%ebx
+.*Warning:.*
+ 128 013e D9C1                         fldl    %st\(1\)
+.*Warning:.*
+ 129 0140 DDD2                         fstl    %st\(2\)
+.*Warning:.*
+ 130 0142 DDDB                         fstpl   %st\(3\)
+.*Warning:.*
+ 131 0144 D8D4                         fcoml   %st\(4\)
+.*Warning:.*
+ 132 0146 D8DD                         fcompl  %st\(5\)
+.*Warning:.*
+ 133 0148 DEC1                         faddp   %st\(1\),%st
+.*Warning:.*
+ 134 014a DECA                         fmulp   %st\(2\),%st
+.*Warning:.*
+ 135 014c D8E3                         fsub    %st\(3\),%st
+ 136 014e D8EC                         fsubr   %st\(4\),%st
+ 137 0150 D8F5                         fdiv    %st\(5\),%st
+ 138 0152 D8FE                         fdivr   %st\(6\),%st
+ 139 0154 DEC1                         fadd
+.*Warning:.*
+ 140 0156 DEE1                         fsub
+.*Warning:.*
+ 141 0158 DEC9                         fmul
+.*Warning:.*
+ 142 015a DEF1                         fdiv
+.*Warning:.*
+ 143 015c DEE9                         fsubr
+.*Warning:.*
+ 144 015e DEF9                         fdivr
+.*Warning:.*
+ 145                           #these should all be legal
+ 146 0160 0FA31556 341200              btl     %edx, 0x123456
+ 147 0167 0FA3D0                       btl     %edx, %eax
+ 148 016a 0C01                         orb     \$1,%al
+ 149 016c 80CB01                       orb     \$1,%bl
+ 150 016f A1110000 00                  movl    17,%eax
+ 151 0174 A1110000 00                  mov     17,%eax
+ 152 0179 66ED                         inw     %dx,%ax
+ 153 017b ED                           inl     %dx,%eax
+ 154 017c 66ED                         inw     \(%dx\),%ax
+ 155 017e ED                           inl     \(%dx\),%eax
+ 156 017f EC                           in      \(%dx\),%al
+ 157 0180 66ED                         in      \(%dx\),%ax
+ 158 0182 ED                           in      \(%dx\),%eax
+ 159 0183 0FB61437                     movzbl  \(%edi,%esi\),%edx
+ 160 0187 0FB6451C                     movzbl  28\(%ebp\),%eax
+ 161 018b 0FB6C0                       movzbl  %al,%eax
+ 162 018e 0FB6F1                       movzbl  %cl,%esi
+ 163 0191 26D7                         xlat    %es:\(%ebx\)
+ 164 0193 D7                           xlat
+ 165 0194 D7                           xlatb
+ 166 0195 DDD8                 1:      fstp    %st\(0\)
+ 167 0197 E2FC                         loop    1b
+ 168 0199 F6F1                         divb    %cl 
+ 169 019b 66F7F1                       divw    %cx 
+ 170 019e F7F1                         divl    %ecx
+ 171 01a0 F6F1                         div     %cl
+ 172 01a2 66F7F1                       div     %cx
+ 173 01a5 F7F1                         div     %ecx
+ 174 01a7 F6F1                         div     %cl,%al
+ 175 01a9 66F7F1                       div     %cx,%ax
+ 176 01ac F7F1                         div     %ecx,%eax
+ 177 01ae 8EDE                         mov     %si,%ds
+ 178 01b0 8EDF                         movl    %edi,%ds
+ 179 01b2 1E                           pushl   %ds
+ 180 01b3 1E                           push    %ds
+ 181 01b4 A0000000 00                  mov     0,%al
+ 182 01b9 66A10000 0100                mov     0x10000,%ax
+ 183 01bf 89C3                         mov     %eax,%ebx
+ 184 01c1 9C                           pushf
+ 185 01c2 9C                           pushfl
+ 186 01c3 669C                         pushfw
+ 187 01c5 9D                           popf
+ 188 01c6 9D                           popfl
+ 189 01c7 669D                         popfw
+ 190 01c9 89341D00 000000              mov     %esi,\(,%ebx,1\)
+ 191 01d0 80250000 00007F              andb    \$~0x80,foo
+ 192                           
+ 193 01d7 6683E0FE                     and     \$0xfffe,%ax
+ 194 01db 662500FF                     and     \$0xff00,%ax
+ 195 01df 25FEFF00 00                  and     \$0xfffe,%eax
+ 196 01e4 2500FF00 00                  and     \$0xff00,%eax
+ 197 01e9 83E0FE                       and     \$0xfffffffe,%eax
+ 198                           
+ 199                           .code16
+ 200 01ec 83E0FE                       and     \$0xfffe,%ax
+ 201 01ef 2500FF                       and     \$0xff00,%ax
+ 202 01f2 6625FEFF 0000                and     \$0xfffe,%eax
+ 203 01f8 662500FF 0000                and     \$0xff00,%eax
+ 204 01fe 6683E0FE                     and     \$0xfffffffe,%eax
+ 205                           
+ 206                           #check 16-bit code auto address prefix
+ 207                           .code16gcc
+ 208 0202 67668D95 00FFFFFF            leal    -256\(%ebp\),%edx
+ 209 020a 6788857F FFFFFF              mov     %al,-129\(%ebp\)
+ 210 0211 67886580                     mov     %ah,-128\(%ebp\)
+ 211 0215 67668D9D 20F9FFFF            leal    -1760\(%ebp\),%ebx
+ 212 021d 67668984 248C0000            movl    %eax,140\(%esp\)
+ 212      00
+ 213                           
+ 214                           .code32
+ 215                           # Make sure that we won't remove movzb by accident.
+ 216 0226 660FB6F8                     movzb   %al,%di
+ 217 022a 0FB6C8                       movzb   %al,%ecx
+ 218                           
+ 219                           .code16gcc
+[      ]*[1-9][0-9]*[  ]*# Except for IRET use 32-bit implicit stack accesses by default.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66E8FAFF FFFF[        ]+call  \.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66FF17[       ]+call  \*\(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66C80000 00[  ]+enter \$0,\$0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+CF[   ]+iret
+.*Warning:.*16-bit.*iret.*
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66FF1F[       ]+lcall \*\(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+669A0000 00000000[    ]+lcall \$0,\$0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66C9[         ]+leave
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66CB[         ]+lret
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66CA0000[     ]+lret  \$0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+666A00[       ]+push  \$0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66683412 0000[        ]+push  \$0x1234
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66FF37[       ]+push  \(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+6606[         ]+push  %es
+.*Warning:.*32-bit.*push.*
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+660FA0[       ]+push  %fs
+.*Warning:.*32-bit.*push.*
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+6660[         ]+pusha
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+669C[         ]+pushf
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+668F07[       ]+pop   \(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+6607[         ]+pop   %es
+.*Warning:.*32-bit.*pop.*
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+660FA1[       ]+pop   %fs
+.*Warning:.*32-bit.*pop.*
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+6661[         ]+popa
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+669D[         ]+popf
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66C3[         ]+ret
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+66C20000[     ]+ret   \$0
+[      ]*[1-9][0-9]*[  ]*
+[      ]*[1-9][0-9]*[  ]*# However use 16-bit branches not accessing the stack by default.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+77FE[         ]+ja    \.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+0F873012[     ]+ja    \.\+0x1234
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+E3FE[         ]+jcxz  \.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+EBFE[         ]+jmp   \.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+E93112[       ]+jmp   \.\+0x1234
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+FF27[         ]+jmp   \*\(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+FF2F[         ]+ljmp  \*\(%bx\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+EA000000 00[  ]+ljmp  \$0,\$0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+E2FE[         ]+loop  \.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+0F05[         ]+syscall
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+0F34[         ]+sysenter
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+0F35[         ]+sysexit
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+0F07[         ]+sysret
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+C7F8FCFF[     ]+xbegin        \.
+[      ]*[1-9][0-9]*[  ]*
+[      ]*[1-9][0-9]*[  ]*# Use 16-bit layout by default for fldenv.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+67D920[       ]+fldenv        \(%eax\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+67D920[       ]+fldenvs       \(%eax\)
+[      ]*[1-9][0-9]*[  ]+[0-9a-f]*[    ]+6766D920[     ]+fldenvl       \(%eax\)
+[      ]*[1-9][0-9]*[  ]*
+[      ]*[1-9][0-9]*[  ]*# Force a good alignment.
+[      ]*[1-9][0-9]*[  ]+[0-9a-f       ]+\.p2align     4,0
+#pass
This page took 0.029853 seconds and 4 git commands to generate.