diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2011-05-12 09:41:09 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2011-05-12 09:41:09 +0000 |
commit | fe8baff11737d3785ff51d20ace9ab31665cd295 (patch) | |
tree | edbab0f933283d5ecf455a5f94150c4f09379c51 /driver/Driver.ml | |
parent | 239cbd2ebab8814b11d7ef43c35a17ce56a7ba0b (diff) | |
download | compcert-fe8baff11737d3785ff51d20ace9ab31665cd295.tar.gz compcert-fe8baff11737d3785ff51d20ace9ab31665cd295.zip |
cparser: support for attributes over struct and union.
cparser: added experimental emulation of packed structs (PackedStruct.ml)
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1650 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'driver/Driver.ml')
-rw-r--r-- | driver/Driver.ml | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/driver/Driver.ml b/driver/Driver.ml index 87b15694..6aa63e02 100644 --- a/driver/Driver.ml +++ b/driver/Driver.ml @@ -71,7 +71,9 @@ let compile_c_file sourcename ifile ofile = "b" (* blocks: mandatory *) ^ (if !option_fstruct_passing then "s" else "") ^ (if !option_fstruct_assign then "S" else "") - ^ (if !option_fbitfields then "f" else "") in + ^ (if !option_fbitfields then "f" else "") + ^ (if !option_fpacked_structs then "p" else "") + in (* Parsing and production of a simplified C AST *) let ast = match Cparser.Parse.preprocessed_file simplifs sourcename ifile with @@ -258,6 +260,7 @@ Language support options (use -fno-<opt> to turn off -f<opt>) : -fstruct-passing Emulate passing structs and unions by value [off] -fstruct-assign Emulate assignment between structs or unions [off] -fvararg-calls Emulate calls to variable-argument functions [on] + -fpacked-structs Emulate packed structs [off] Code generation options: -fmadd Use fused multiply-add and multiply-sub instructions [off] -fsmall-data <n> Set maximal size <n> for allocation in small data area @@ -387,6 +390,7 @@ let cmdline_actions = @ f_opt "bitfields" option_fbitfields @ f_opt "vararg-calls" option_fvararg_calls @ f_opt "madd" option_fmadd + @ f_opt "packed-structs" option_fpacked_structs let _ = Gc.set { (Gc.get()) with Gc.minor_heap_size = 524288 }; |