Hi there, If target mode isn't specified via either gcc configuration option --with-mode or command line, this patch intends to improve gcc driver to automatically add option -mthumb for thumb-only target. Tested with gcc regression test for various arm targets, no regression. Is it OK? BR, Terry gcc/ChangeLog: 2015-03-02 Terry Guo * common/config/arm/arm-common.c (arm_is_target_thumb_only): New function. * config/arm/arm-protos.h (FL_ Macros): Move to ... * config/arm/arm-opts.h (FL_ Macros): ... here. (struct arm_arch_core_flag): New struct. (arm_arch_core_flags): New array for arch/core and flag map. * config/arm/arm.h (MODE_SET_SPEC_FUNCTIONS): Define new SPEC function. (EXTRA_SPEC_FUNCTIONS): Include new SPEC function. (MODE_SET_SPECS): New SPEC. (DRIVER_SELF_SPECS): Include new SPEC.