Ian thanks for you answer, On Sun, 1 Mar 2009, Ian Lance Taylor wrote:
> > SUBTARGET_SWITCHES shouldn't have anything to do with ASM_SPEC. > Unfortunately it does. Mark was right for the asmspec in rest_of_decl_compilation but the subtarget switches needed. In a sense what you saying above is true aka they havent anything to do directly with asm spec. However consider this: define in your host file ASM_SPEC "%{mno-legend:-testing}" and then try boostraping the 4.3.X. Your resulting cc1 doesnt know the -mno-legend. If that flag is included in your STAGE2 flags the cc1 will bail out and the whole build will aborted. Now try the same say in 3.4.6. You will find that if you also add the mno-legend as a target switch the newly build cc1 accepts this switch and goes on with compilation as usual. > The SUBTARGET_SWITCHES macro was removed from the i386 backend in gcc > 4.3 because all the uses of it were removed. > The only use of > SUBTARGET_SWITCHES was to be expanded by the TARGET_SWITCHES macro. > Exactly. The feature was there for the last 15 years of developemnt of GCC. Whats replacing it? Nothing? > > Nobody promises that internal details of a gcc port will continue to be > the same in each new release. Nobody promises that a private port will > continue to work. If you want to maintain a private port, you have to > do some work with each new gcc release. That's just the way it is. > Thans fine. Even thought I would think when a feature is removed provisions are taken to substitute it with another mechanism. Anyways my question again will be: feature OS's (not linux) they will (may) need to add extra features/ options depending on their needs. The last 15 years one way to do that was using SUBTARGET_SWITCHES. Whats is the current way? I am willing to do some work on the code if you please give me some poitners. At least in 3.4.6 I could see the TARGET_SWITCES, so even if SUBTARGET_SWITCHES macro wasnt defined as a feature there was an obvious suggestion how to go on. Now I cannt see anything like that in the 4.3.X branch code. Regards,