Skip to content

Commit

Permalink
-fno-use-cxa-atexit added
Browse files Browse the repository at this point in the history
  • Loading branch information
ilg-ul committed Oct 9, 2013
1 parent 6eb16e6 commit 8a954e0
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 0 deletions.
1 change: 1 addition & 0 deletions ilg.gnuarmeclipse.managedbuild.cross/plugin.properties
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@ option.optimization.messagelength = Message length (-fmessage-length=0)
option.optimization.signedchar = 'char' is signed (-fsigned-char)
option.optimization.functionsections = Function sections (-ffunction-sections)
option.optimization.datasections = Data sections (-fdata-sections)
option.optimization.nousecxaatexit = Do not use _cxa_atexit() (-fno-use-cxa-atexit)
option.optimization.nocommon = No common unitialized (-fno-common)
option.optimization.noinlinefunctions = Do not inline functions (-fno-inline-functions)
option.optimization.freestanding = Assume freestanding environment (-ffreestanding)
Expand Down
15 changes: 15 additions & 0 deletions ilg.gnuarmeclipse.managedbuild.cross/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -465,6 +465,16 @@
value="true">
</enablement>
</option>
<option
command="-fno-use-cxa-atexit"
defaultValue="false"
id="ilg.gnuarmeclipse.managedbuild.cross.option.base.optimization.nousecxaatexit"
isAbstract="true"
name="%option.optimization.nousecxaatexit"
tip="Do not register destructors for objects with static storage duration with the __cxa_ atexit() function."
useByScannerDiscovery="true"
valueType="boolean">
</option>
<option
command="-fno-common"
defaultValue="false"
Expand Down Expand Up @@ -2357,6 +2367,11 @@
id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.datasections"
superClass="ilg.gnuarmeclipse.managedbuild.cross.option.base.optimization.datasections">
</option>
<option
category="ilg.gnuarmeclipse.managedbuild.cross.optionCategory.optimization"
id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.nousecxaatexit"
superClass="ilg.gnuarmeclipse.managedbuild.cross.option.base.optimization.nousecxaatexit">
</option>
<option
category="ilg.gnuarmeclipse.managedbuild.cross.optionCategory.optimization"
id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.nocommon"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,8 @@ public class Option {
+ "functionsections";
private static final String OPTION_OPTIMIZATION_DATASECTIONS = OPTION_OPTIMIZATION
+ "datasections";
private static final String OPTION_OPTIMIZATION_NOUSECXAATEXIT = OPTION_OPTIMIZATION
+ "nousecxaatexit";
private static final String OPTION_OPTIMIZATION_NOCOMMON = OPTION_OPTIMIZATION
+ "nocommon";
private static final String OPTION_OPTIMIZATION_NOINLINEFUNCTIONS = OPTION_OPTIMIZATION
Expand Down Expand Up @@ -330,6 +332,10 @@ private static String getOptimizationFlags(IConfiguration config) {
if (sValue != null && sValue.length() > 0)
sReturn += " " + sValue;

sValue = getOptionBooleanCommand(config, OPTION_OPTIMIZATION_NOUSECXAATEXIT);
if (sValue != null && sValue.length() > 0)
sReturn += " " + sValue;

sValue = getOptionBooleanCommand(config, OPTION_OPTIMIZATION_NOCOMMON);
if (sValue != null && sValue.length() > 0)
sReturn += " " + sValue;
Expand Down

0 comments on commit 8a954e0

Please sign in to comment.