aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2010-08-20Merge branch 'rickard/gitignore/R14B' into devRickard Green
* rickard/gitignore/R14B: Update gitignore
2010-08-20Update gitignoreRickard Green
2010-08-20Merge branch 'tm/fix-cover-html-escaping' into devBjörn Gustavsson
* tm/fix-cover-html-escaping: Fix cover's HTML-generation logic to escape ampersands in source code OTP-8776
2010-08-20Merge branch 'ms/suppress-epmd-startup-message' into devBjörn Gustavsson
* ms/suppress-epmd-startup-message: epmd: suppress startup message OTP-8775
2010-08-20Merge branch 'bjorn/solaris-fp-exception' into devBjörn Gustavsson
* bjorn/solaris-fp-exception: Solaris/x86: Handle floating point exceptions properly in driver threads
2010-08-20Merge branch 'pg/fix-ssl-handshake-client-certificate' into devIngela Anderton Andin
* pg/fix-ssl-handshake-client-certificate: Fix bug in ssl handshake protocol related to the choice of cipher suites OTP-8772
2010-08-20Merge branch 'bjorn/remove-elib_malloc/OTP-8764' into devBjörn Gustavsson
* bjorn/remove-elib_malloc/OTP-8764: erts: Remove broken elib_malloc erts: Remove the unused mem_drv driver erts: Remove stray pre-ISO-C compatibility macros erts: Remove unused decl.h
2010-08-20Merge branch 'bjorn/remove-tickets-in-vsn' into devBjörn Gustavsson
* bjorn/remove-tickets-in-vsn: Remove ticket numbers from all vsn.mk files
2010-08-20Merge branch 'bjorn/export-ignore' into devBjörn Gustavsson
* bjorn/export-ignore: Stop including in .gitignore files in the source tar files
2010-08-19Merge branch 'rickard/fix-faulty-assert/OTP-8759' into devRickard Green
* rickard/fix-faulty-assert/OTP-8759: Fix faulty no_empty_run_queues assertion
2010-08-19Merge branch 'dgud/wx/callback-crash/OTP-8766' into devDan Gudmundsson
* dgud/wx/callback-crash/OTP-8766: Callback crash reported by Sergei Golovan.
2010-08-19Merge branch 'hb/type_reference/OTP-8733' into devHans Bolinder
* hb/type_reference/OTP-8733: reference() substituted for ref() in docs
2010-08-18Remove ticket numbers from all vsn.mk filesBjörn Gustavsson
Some application's vsn.mk files contained a list of the ticket numbers fixed in each version. Since that information can be obtained from the notes.xml file or from the merge commits in the git repository (provided that the branch name includes the ticket number), there is no reason to manually maintain that information in the vsn.mk files.
2010-08-18Fix bug in ssl handshake protocol related to the choice of cipher suitesPaul Guyot
in client hello message when a client certificate is used The client hello message now always include ALL available cipher suites (or those specified by the ciphers option). Previous implementation would filter them based on the client certificate key usage extension (such filtering only makes sense for the server certificate).
2010-08-18Merge branch 'mp/fix-hipe_bifs_alloc_data' into devBjörn Gustavsson
* mp/fix-hipe_bifs_alloc_data: fix hipe_bifs_alloc_data_2 to avoid "Yikes!" warning OTP-8769
2010-08-18Callback crash reported by Sergei Golovan.Dan Gudmundsson
May also be the reason of the crash seen on windows by several others.
2010-08-18Merge branch 'dgud/wx/system_settings' into devDan Gudmundsson
* dgud/wx/system_settings: Implemented wxSystemSettings class.
2010-08-18Stop including in .gitignore files in the source tar filesBjörn Gustavsson
There is a .gitignore file in every otherwise empty directory, as well as a few other .gitignore files. Including all these .gitignore files in the source code distribution serves no useful purpose.
2010-08-17Solaris/x86: Handle floating point exceptions properly in driver threadsBjörn Gustavsson
On Solaris/x86, the floating point exceptions bits seems to be propagated to child threads, so if scheduler threads use floating points exceptions, also driver threads will have floating points exception enabled. The problem is that erts_thread_init_float() has not been called for driver threads, and because of that matherr() will crash when called. Fix matherr() so that it will work even if erts_thread_init_float() has not been called. This fix was suggested by Mikael Pettersson.
2010-08-17erts: Remove broken elib_mallocBjörn Gustavsson
elib_malloc is an alternate memory allocator that is no longer possible to build.
2010-08-17erts: Remove the unused mem_drv driverBjörn Gustavsson
The mem_drv driver was only useful when elib_malloc was active.
2010-08-17erts: Remove stray pre-ISO-C compatibility macrosBjörn Gustavsson
A long time ago, the Erlang run-time system could be build with pre-ANSI/ISO-C (K&R) C compilers, but that is no longer possible. Remove the remaining uses of the compatibility macros that made it possible that possible.
2010-08-14erts: Remove unused decl.hBjörn Gustavsson
The header file erts/emulator/beam/decl.h is no longer used.
2010-08-13fix hipe_bifs_alloc_data_2 to avoid "Yikes!" warningMikael Pettersson
It's been reported that HiPE-enabled Erlang VMs running on BSD systems sometimes generate messages like Yikes! erts_alloc() returned misaligned address 0x8016a512c These originate from hipe_bif0.c:hipe_bifs_alloc_data_2(). A native code module has an associated data area of some size and alignment. In the case where the size is zero, the alignment is irrelevant, but the allocation BIF checks it anyway. The warning then triggers on systems where malloc(0) returns blocks with less alignment than we (erroneously) expected. The fix is to simply skip the allocation in this case and return NULL. The loader won't actually use the address in this case so that's safe. This is also an optimization since it avoids allocating memory that cannot be used, and it avoids fragmenting the system heap with useless tiny blocks. A second problem is that the warning message failed to identify its origin. Fixed by prefixing the message by the BIF's name rather than the silly Yikes! string. Tested and confirmed to solve the original reporter's problem.
2010-08-12Merge branch 'bjorn/remove-obsolete-driver-support/OTP-8758' into devBjörn Gustavsson
* bjorn/remove-obsolete-driver-support/OTP-8758: Remove obsolete/driver.h and the associated functionality
2010-08-11Fix faulty no_empty_run_queues assertionRickard Green
For a short period of time no_empty_run_queues may have been increased twice for a specific run queue. Two assertions did not take this into account.
2010-08-11Remove obsolete/driver.h and the associated functionalityBjörn Gustavsson
The obsolete/driver.h header file has been obsolete since R8B. Remove that file, along with obsolete thread APIs for drivers in the emulator and the test cases.
2010-08-10Merge branch 'bjorn/remove-clearcase-support' into devBjörn Gustavsson
* bjorn/remove-clearcase-support: Top-level Makefile: Remove clearmake support otp_build: Remove clearmake support otp_build: Remove Clearcase support for primary bootstrap and preloaded files ts: Eliminate Clearcase references in comments ts: Remove Clearcase detection
2010-08-10Merge branch 'rickard/bootstrap_setup/OTP-8756' into devRickard Green
* rickard/bootstrap_setup/OTP-8756: Regenerate bootstrap/{erl,erlc} when switching target
2010-08-10Merge branch 'rickard/trailing-data-alignment/OTP-8754' into devRickard Green
* rickard/trailing-data-alignment/OTP-8754: Align trailing message data for all types of structures
2010-08-10Merge branch 'rickard/ethread-rewrite/OTP-8544' into devRickard Green
* rickard/ethread-rewrite/OTP-8544: Rewrite ethread library
2010-08-10Rewrite ethread libraryRickard Green
Large parts of the ethread library have been rewritten. The ethread library is an Erlang runtime system internal, portable thread library used by the runtime system itself. Most notable improvement is a reader optimized rwlock implementation which dramatically improve the performance of read-lock/read-unlock operations on multi processor systems by avoiding ping-ponging of the rwlock cache lines. The reader optimized rwlock implementation is used by miscellaneous rwlocks in the runtime system that are known to be read-locked frequently, and can be enabled on ETS tables by passing the `{read_concurrency, true}' option upon table creation. See the documentation of `ets:new/2' for more information. The ethread library can now also use the libatomic_ops library for atomic memory accesses. This makes it possible for the Erlang runtime system to utilize optimized atomic operations on more platforms than before. Use the `--with-libatomic_ops=PATH' configure command line argument when specifying where the libatomic_ops installation is located. The libatomic_ops library can be downloaded from: http://www.hpl.hp.com/research/linux/atomic_ops/ The changed API of the ethread library has also caused modifications in the Erlang runtime system. Preparations for the to come "delayed deallocation" feature has also been done since it depends on the ethread library. Note: When building for x86, the ethread library will now use instructions that first appeared on the pentium 4 processor. If you want the runtime system to be compatible with older processors (back to 486) you need to pass the `--enable-ethread-pre-pentium4-compatibility' configure command line argument when configuring the system.
2010-08-09Regenerate bootstrap/{erl,erlc} when switching targetRickard Green
2010-08-07Align trailing message data for all types of structuresRickard Green
Alignment of trailing data in messages has been adjusted. This in order to be able to pass data of any type as trailing data in the future.
2010-08-04epmd: suppress startup messageMichael Santos
Running transient distributed Erlang nodes can generate a large number of informational messages to syslog. Modify epmd to log the startup message only when passed the debug switch. Reported-By: Sergey Samokhin
2010-08-03Top-level Makefile: Remove clearmake supportBjörn Gustavsson
2010-08-03otp_build: Remove clearmake supportBjörn Gustavsson
2010-08-03otp_build: Remove Clearcase support for primary bootstrap and preloaded filesBjörn Gustavsson
2010-08-03ts: Eliminate Clearcase references in commentsBjörn Gustavsson
2010-08-03ts: Remove Clearcase detectionBjörn Gustavsson
ts_lib:erlang_type/0 used to dectect whether the system was run in Clearcase, in an uninstalled source tree or in an installed system. There now only remain two cases: running in a source tree/git repository or in an installed system. Update ts_lib:erlang_type/0 and all callers accordingly.
2010-08-03Update primary bootstrapBjörn Gustavsson
2010-08-03Fix building of primary bootstrap when versions have changedBjörn Gustavsson
If the versions of kernel or stdlib have changed, attempting to update the primary bootstrap (using "./otp_build update_primary") will fail during the rebuild of the start scripts. The problem is that the app files in bootstrap/lib/*/ebin/*.app will not be refreshed if they exist, because of missing dependencies. Ultimately the dependencies should be fixed, but since there already is a bootstrap_clean target to work around missing dependencies, fix bootstrap_clean to also remove bootstrap/lib/*/ebin/*.app.
2010-08-03Merge branch 'pg/optimize_beam_dict_string_table' into devBjörn Gustavsson
2010-07-30Merge branch 'egil/makefile-fix/OTP-8728' into devBjörn-Egil Dahlberg
2010-07-30Fix libm linking with --as-needed flagBjörn-Egil Dahlberg
When building with "--as-needed" linker flags on Linux the build will fail. This has now been fixed.
2010-07-30Merge branch 'db/tv_nthtail_fix' into devBjörn Gustavsson
OTP-8751
2010-07-29Merge branch 'cg/small-typos' into devBjörn Gustavsson
2010-07-29Merge branch 'ta/doc-fixes' into devBjörn Gustavsson
2010-07-29Merge branch 'pg/load-native-code-for-early-modules' into devBjörn Gustavsson
OTP-8750
2010-07-29beam_asm: Simplify string table generation for beamsPaul Guyot
The code for generating the string table (which is now only used for bit syntax matching) in a BEAM file is quite complicated and potentially expensive when compiling modules with many thousands of clauses doing bit syntax matching. Simplify and optimize the code using bit syntax and binary:match/2 instead of the list operations in the original code.