aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2011-08-15erts: use a union to avoid strict aliasing issuesTuncer Ayaz
Use a union for pointer type conversion to avoid compiler warnings about strict-aliasing violations with gcc-4.1. gcc >= 4.2 does not emit the warning. TODO: Reconsider use of union once gcc-4.1 is obsolete?
2011-08-15erts: adapt matrix_nif to R14 erl_nif API changesTuncer Ayaz
2011-08-15Merge branch 'nick/lht-idl-compiler-opt/OTP-9460' into devNiclas Eklund
* nick/lht-idl-compiler-opt/OTP-9460: Changed version, added release note and updated license headers. ic: Implement multiple include optimization ic: Fix preprocessor double expanded included files ic: Improve ic_pragma performance by using ets:match
2011-08-11Changed version, added release note and updated license headers.Niclas Eklund
2011-08-10Merge branch 'lars/xmerl/attr_val_bug/OTP-9411' into devLars Thorsen
* lars/xmerl/attr_val_bug/OTP-9411: Added test case for ticket 9411. Entity replacement in attributes doesn't work poperly.
2011-08-10Merge branch 'lars/xmerl/cant_locate_xsd/OTP-9410' into devLars Thorsen
* lars/xmerl/cant_locate_xsd/OTP-9410: Added ticket test case. Fixed problem with relative paths to schemas.
2011-08-09Added test case for ticket 9411.Lars Thorsen
2011-08-09Entity replacement in attributes doesn't work poperly.Lars Thorsen
2011-08-09Added ticket test case.Lars Thorsen
2011-08-09Fixed problem with relative paths to schemas.Lars Thorsen
2011-08-08Merge branch 'hl/gen_fsm-return' into devHenrik Nord
* hl/gen_fsm-return: Fix minor typo in gen_fsm documentation OTP-9456
2011-08-08Merge branch 'ms/inet-socket-domain-error' into devHenrik Nord
* ms/inet-socket-domain-error: inet: error if fd does not match socket domain OTP-9455
2011-08-08Merge branch 'cg/fix-constant-logical-operand' into devHenrik Nord
* cg/fix-constant-logical-operand: Fix use of logical operator && with constant operand instead of bitwise &. OTP-9454
2011-08-08Merge branch 'pg/fix-freebsd-dualcore-detection' into devHenrik Nord
* pg/fix-freebsd-dualcore-detection: Fix bug in FreeBSD topology detection code OTP-9453
2011-08-08Merge branch 'pg/fix-hibernate-scheduling-with-hipe' into devHenrik Nord
* pg/fix-hibernate-scheduling-with-hipe: Fix bug related to hibernate and HiPE (clear F_HIBERNATE_SCHED flag) OTP-9452
2011-08-08Fix minor typo in gen_fsm documentationHenrik Nord
2011-08-05Merge branch 'bjorn/erts/loader-related-bs-bugs/OTP-9284' into devBjörn Gustavsson
* bjorn/erts/loader-related-bs-bugs/OTP-9284: Fix binary construction with huge literal sizes beam_load.c: Add overflow check of tag values beam_makeops: Add some sanity checks Fix construction of <<0:((1 bsl 32)-1)>>
2011-08-03Fix binary construction with huge literal sizesBjörn Gustavsson
Constructing binaries using the bit syntax with literals sizes that would not fit in an Uint will either cause an emulator crash or the loading to be aborted. Use the new TAG_o tag introduced in the previous commit to make sure that the attempt to create huge binary literals will generate a system_limit exception at run-time.
2011-08-03beam_load.c: Add overflow check of tag valuesBjörn Gustavsson
The handling of large values for other tags than TAG_i (integer) is buggy. Any tag value equal to or greater than 2^40 (5 bytes) will abort loading. Tag values fitting in 5 bytes will be truncated to 4 bytes values. Those bugs cause real problems because the bs_init2/6 and bs_init_bits/6 instructions unfortunately use TAG_u to encode literal sizes (using TAG_i would have been a better choice, but it is too late to change that now). Any binary size that cannot fit in an Uint should cause a system_limit exception at run-time, but instead the buggy handling will either cause an emulator crash (for values in the range 2^32 to 2^40-1) or abort loading. In this commit, implement overflow checking of tag values as a preparation for fixing the binary construction instructions. If any tag value cannot fit in an Uint (except for TAG_i), change the tag to the special TAG_o overflow tag.
2011-08-03beam_makeops: Add some sanity checksBjörn Gustavsson
We want to make sure that a tag/type name is not defined more than once and that we don't define too many primitive tags. Primitive tags must be named with lowercase letters (or they will be confused with variable names in transformations in the ops.tab file).
2011-08-03Fix construction of <<0:((1 bsl 32)-1)>>Björn Gustavsson
Attempting to construct <<0:((1 bsl 32)-1)>>, the largest bitstring allowed in a 32 bit emulator, would cause an emulator crash because of integer overflow. Fix the problem by using an Uint64 to avoid integer overflow. Do not attempt to handle construction of <<0:((1 bsl 64)-1>> in a 64-bit emulator, because that will certainly cause the emulator to terminate anyway because of insufficient memory.
2011-07-31ic: Implement multiple include optimizationHaitao Li
Like C header files, IDL files are often macro guarded to avoid opening and processing the same file repeatedly. This patch implements the algorithm used by GNU cpp as described at: http://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
2011-07-29Merge branch 'sverker/allocator-aoff/OTP-9424' into devSverker Eriksson
* sverker/allocator-aoff/OTP-9424: New allocator: Address order first fit (aoff)
2011-07-27Merge branch 'sverker/fun_SUITE-refc_dist-gcfix' into devSverker Eriksson
* sverker/fun_SUITE-refc_dist-gcfix: Fix test case fun_SUITE:refc_dist
2011-07-27Merge branch 'sverker/epmd-vxworks-select-bug/OTP-9427' into devSverker Eriksson
* sverker/epmd-vxworks-select-bug/OTP-9427: Fix epmd crash on vxworks caused by faulty argument to select
2011-07-27Fix epmd crash on vxworks caused by faulty argument to selectSverker Eriksson
The first argument g->max_conn to select() in epmd_srv.c seems to be wrong as it excludes the listening socket(s). Instead we keep track of the highest fd seen. However I still don't understand why select() started to fail for vxworks with R14B03 when the feature of more than one listening socket was introduced. The default is still 1 listening socket (num_sockets=1), which would make the first argument to select() unchanged.
2011-07-27ic: Fix preprocessor double expanded included filesHaitao Li
New lines are pushed to output inconsistently with "\n" or $\n. This confuses only_nls/1, which tests if the file just expanded are all skipped. This patch consistently pushes character $\n to output, instead of string "\n" to further improve efficiency.
2011-07-27ic: Improve ic_pragma performance by using ets:matchHaitao Li
`ets:tab2list/1` followed by list comprehension is used in a few places in module ic_pragma. This introduces significant performance impact on large lists.
2011-07-26Merge branch 'maint-r14' into devMicael Karlberg
Conflicts: lib/snmp/doc/src/notes.xml lib/snmp/src/agent/snmpa_mpd.erl lib/snmp/src/app/snmp.appup.src lib/snmp/vsn.mk
2011-07-26Merge branch 'sverker/testcase/OTP-9422' into devSverker Eriksson
* sverker/testcase/OTP-9422: Test case for OTP-9422
2011-07-26Merge branch 'sverker/testcase/OTP-9423' into devSverker Eriksson
* sverker/testcase/OTP-9423: Add test case for ETS bug OTP-9423
2011-07-26Merge branch 'sverker/sbmbc-fixup' into devSverker Eriksson
* sverker/sbmbc-fixup: Small fixups for rickard/sbmbc/OTP-9339
2011-07-26Fix test case fun_SUITE:refc_distSverker Eriksson
It failed sometimes depending on GC invocation.
2011-07-22Merge branch 'bmk/snmp/snmp421_integration' into maint-r14Erlang/OTP
* bmk/snmp/snmp421_integration: Fixed install directory typo for man3. Peter Lemenkov. Hans Ulrich Niedermann. The snmp config tool could not handle (manager) audit trail config because the option seqno was not handled. OTP-9354 [agent] The SNMP ACM cache was not properly updated when changes where made to the VACM security-to-group, access and view-tree-family tables. OTP-9367 Added marker id's in the snmpc(command) to allow linking top specific compiler options. Updated release notes accordingly. OTP-9437 [manager] There was no way to specify transport domain. The transport domains was assumed to be IPv4 (transportDomainUdpIpv4). This has now been changed so that it can also be IPv6 (transportDomainUdpIpv6). To facilitate this, the transport domain, tdomain, is now a (new) valid option when registering (snmpm#register_agent) a new agent (and updating (snmpm#update_agent_info) agent info). This also mean that the transport behaviour has changed. Fixed appup file. OTP-9305 [compiler] Make documentation for the snmpc escript regarding the the new option for warnings as errors ("--wae" in this case). Tuncer Ayaz. OTP-9437 [compiler] Added the option warnings_as_errors which specifies whether warnings should be treated as errors. Tuncer Ayaz. OTP-9437 Fixed unintended build to ebin dir of snmpc escript. Cosmetics indenting... Removed "crap" that somehow had gotten into the file (escape sequence). Fixed install of MIB compiler escript. Was incorrectly installed both in bin end ebin. Fixed (uncommented) test cases. Improved (transport) domain error reporting. Fixed release notes and API documentation for tdomain.xs transport domain config option named tdomain. Removed debug printouts. transport domain error detection. [manager] No way to specify transport domain. Transport domains was assumed to be IPv4. This has now been changed so that it can also be IPv6. To facilitate this, the transportDomain is now a (new) valid option. This also mean that the transport behaviour has changed. OTP-9305 Updated version. [agent] Did not handle transport domains properly in some cases. OTP-9400 Utility make target for cleanig the repo... ...
2011-07-22Fixed install directory typo for man3.Micael Karlberg
Peter Lemenkov Hans Ulrich Niedermann OTP-9442 Merge branch 'bmk/snmp/install_dir_typo_man3/OTP-9442' into bmk/snmp/snmp421_integration Conflicts: lib/snmp/doc/src/notes.xml
2011-07-22Fixed install directory typo for man3.Micael Karlberg
Peter Lemenkov. Hans Ulrich Niedermann. OTP-9442
2011-07-22Merge branch 'raimo/io_lib_fread/OTP-9439' into devRaimo Niskanen
* raimo/io_lib_fread/OTP-9439: Code cleanup, unduplicate test for whitespace EOF before first field is only ok for first character in io:fread At end of input ask for more also for for literal format characters
2011-07-22Test case for OTP-9422Sverker Eriksson
2011-07-22[agent] The SNMP ACM cache was not properly updated whenMicael Karlberg
changes where made to the VACM security-to-group, access and view-tree-family tables. OTP-9367 Merge branch 'bmk/snmp/agent/acm_cache_cleanup/OTP-9367' into bmk/snmp/snmp421_integration Conflicts: lib/snmp/doc/src/notes.xml lib/snmp/src/app/snmp.appup.src
2011-07-21Code cleanup, unduplicate test for whitespaceRaimo Niskanen
2011-07-21The snmp config tool could not handle (manager) audit trail configMicael Karlberg
because the option seqno was not handled. OTP-9354 Merge branch 'bmk/snmp/audit_trail_config_bug/OTP-9354' into bmk/snmp/snmp421_integration Conflicts: lib/snmp/doc/src/notes.xml lib/snmp/src/app/snmp.appup.src
2011-07-21The snmp config tool could not handle (manager) audit trail configMicael Karlberg
because the option seqno was not handled. OTP-9354
2011-07-21EOF before first field is only ok for first character in io:freadRaimo Niskanen
2011-07-21At end of input ask for more also for for literal format charactersRaimo Niskanen
2011-07-21[agent] The SNMP ACM cache was not properly updated whenMicael Karlberg
changes where made to the VACM security-to-group, access and view-tree-family tables. OTP-9367
2011-07-20Add test case for ETS bug OTP-9423Sverker Eriksson
2011-07-20Small fixups for rickard/sbmbc/OTP-9339Sverker Eriksson
alloc_no of sbmbc_low_alloc was set to ERTS_ALC_A_STANDARD_LOW
2011-07-19Added marker id's in the snmpc(command) to allow linkingMicael Karlberg
top specific compiler options. Updated release notes accordingly. OTP-9437
2011-07-19[compiler] Added the option warnings_as_errors (for the SNMP MIBMicael Karlberg
compiler (escript) frontend, the option --wae is used) which specifies whether warnings should be treated as errors. Tuncer Ayaz. OTP-9437 Merge branch 'bmk/snmp/compiler/warnings_as_errors/OTP-9437' into bmk/snmp/snmp421_integration Conflicts: lib/snmp/doc/src/notes.xml lib/snmp/src/app/snmp.appup.src lib/snmp/src/compile/Makefile
2011-07-19[manager] There was no way to specify transport domain.Micael Karlberg
The transport domains was assumed to be IPv4 (transportDomainUdpIpv4). This has now been changed so that it can also be IPv6 (transportDomainUdpIpv6). To facilitate this, the transport domain, tdomain, is now a (new) valid option when registering (snmpm#register_agent) a new agent (and updating (snmpm#update_agent_info) agent info). This also mean that the transport behaviour has changed. Fixed appup file. OTP-9305