VirtualBox

Changeset 58608 in vbox


Ignore:
Timestamp:
Nov 6, 2015 3:29:59 PM (9 years ago)
Author:
vboxsync
Message:

iprt/asmdefs.mac: Introduced RT_NOINC_SEGMENTS to avoid unncessary segments in the BS3Kit stuff.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/asmdefs.mac

    r58587 r58608  
    348348;
    349349%ifdef ASM_FORMAT_OMF
    350 
    351  ; 16-bit segments first (OMF / OS/2 specific).
    352  %ifdef RT_INCL_16BIT_SEGMENTS
    353   segment DATA16 public CLASS=FAR_DATA align=16 use16
    354   segment DATA16_INIT public CLASS=FAR_DATA align=16 use16
    355   group DGROUP16 DATA16 DATA16_INIT
    356 
    357   ;;
    358   ; Begins 16-bit data
    359   %macro BEGINDATA16 0
    360    segment DATA16
    361   %endmacro
    362 
    363   ;;
    364   ; Begins 16-bit init data
    365   %macro BEGINDATA16INIT 0
    366    segment DATA16_INIT
    367   %endmacro
    368 
    369   segment CODE16 public CLASS=FAR_CODE align=16 use16
    370   segment CODE16_INIT public CLASS=FAR_CODE align=16 use16
    371   group CGROUP16 CODE16 CODE16_INIT
    372 
    373   ;;
    374   ; Begins 16-bit code
    375   %macro BEGINCODE16 0
    376    segment CODE16
    377   %endmacro
    378 
    379   ;;
    380   ; Begins 16-bit init code
    381   %macro BEGINCODE16INIT 0
    382    segment CODE16_INIT
    383   %endmacro
    384 
    385  %endif
    386 
    387  ; 32-bit segments.
    388  segment TEXT32 public CLASS=CODE align=16 use32 flat
    389  segment DATA32 public CLASS=DATA align=16 use32 flat
    390  segment BSS32  public CLASS=BSS  align=16 use32 flat
    391 
    392  ; Make the TEXT32 segment default.
    393  segment TEXT32
     350 %ifndef RT_NOINC_SEGMENTS
     351
     352  ; 16-bit segments first (OMF / OS/2 specific).
     353  %ifdef RT_INCL_16BIT_SEGMENTS
     354   segment DATA16 public CLASS=FAR_DATA align=16 use16
     355   segment DATA16_INIT public CLASS=FAR_DATA align=16 use16
     356   group DGROUP16 DATA16 DATA16_INIT
     357
     358   ;;
     359   ; Begins 16-bit data
     360   %macro BEGINDATA16 0
     361    segment DATA16
     362   %endmacro
     363
     364   ;;
     365   ; Begins 16-bit init data
     366   %macro BEGINDATA16INIT 0
     367    segment DATA16_INIT
     368   %endmacro
     369
     370   segment CODE16 public CLASS=FAR_CODE align=16 use16
     371   segment CODE16_INIT public CLASS=FAR_CODE align=16 use16
     372   group CGROUP16 CODE16 CODE16_INIT
     373
     374   ;;
     375   ; Begins 16-bit code
     376   %macro BEGINCODE16 0
     377    segment CODE16
     378   %endmacro
     379
     380   ;;
     381   ; Begins 16-bit init code
     382   %macro BEGINCODE16INIT 0
     383    segment CODE16_INIT
     384   %endmacro
     385
     386  %endif
     387
     388  ; 32-bit segments.
     389  segment TEXT32 public CLASS=CODE align=16 use32 flat
     390  segment DATA32 public CLASS=DATA align=16 use32 flat
     391  segment BSS32  public CLASS=BSS  align=16 use32 flat
     392
     393  ; Make the TEXT32 segment default.
     394  segment TEXT32
     395 %endif ; RT_NOINC_SEGMENTS
    394396%endif
    395397
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette