trunk/src/build/flags_clang.mak
r241625 | r241626 | |
20 | 20 | CCOMFLAGS += -Wno-inline-new-delete |
21 | 21 | # caused by src/mess/drivers/x07.c, src/osd/sdl/window.c, src/emu/sound/disc_mth.inc |
22 | 22 | CCOMFLAGS += -Wno-absolute-value |
| 23 | # caused by src/emu/bus/isa/s3virge.c, src/emu/bus/isa/trident.c, src/emu/video/pc_vga.c |
| 24 | CCOMFLAGS +=-Wno-dynamic-class-memaccess |
23 | 25 | # these were disabled because of bugs in older clang versions |
24 | 26 | CCOMFLAGS += -Wformat-security |
25 | 27 | # these show up when compiling as c++11 |
trunk/src/emu/cpu/i386/i386.c
r241625 | r241626 | |
1686 | 1686 | } |
1687 | 1687 | if (operand32 != 0) // if 32-bit |
1688 | 1688 | { |
1689 | | if(REG32(ESP) < 8) |
| 1689 | if(i386_limit_check(SS, REG32(ESP) - 8)) |
1690 | 1690 | { |
1691 | | logerror("CALL: Stack has no room for return address.\n"); |
| 1691 | logerror("CALL (%08x): Stack has no room for return address.\n",m_pc); |
1692 | 1692 | FAULT(FAULT_SS,0) // #SS(0) |
1693 | 1693 | } |
1694 | 1694 | } |
1695 | 1695 | else |
1696 | 1696 | { |
1697 | | if(REG16(SP) < 4) |
| 1697 | if(i386_limit_check(SS, (REG16(SP) - 4) & 0xffff)) |
1698 | 1698 | { |
1699 | | logerror("CALL: Stack has no room for return address.\n"); |
| 1699 | logerror("CALL (%08x): Stack has no room for return address.\n",m_pc); |
1700 | 1700 | FAULT(FAULT_SS,0) // #SS(0) |
1701 | 1701 | } |
1702 | 1702 | } |
r241625 | r241626 | |
1944 | 1944 | /* same privilege */ |
1945 | 1945 | if (operand32 != 0) // if 32-bit |
1946 | 1946 | { |
1947 | | if(REG32(ESP) < 8) |
| 1947 | if(i386_limit_check(SS, REG32(ESP) - 8)) |
1948 | 1948 | { |
1949 | 1949 | logerror("CALL: Stack has no room for return address.\n"); |
1950 | 1950 | FAULT(FAULT_SS,0) // #SS(0) |
r241625 | r241626 | |
1954 | 1954 | } |
1955 | 1955 | else |
1956 | 1956 | { |
1957 | | if(REG16(SP) < 4) |
| 1957 | if(i386_limit_check(SS, (REG16(SP) - 4) & 0xffff)) |
1958 | 1958 | { |
1959 | 1959 | logerror("CALL: Stack has no room for return address.\n"); |
1960 | 1960 | FAULT(FAULT_SS,0) // #SS(0) |