Skip to content

Commit

Permalink
merge from older libjit_framebuilder branch and update to make it com…
Browse files Browse the repository at this point in the history
…pile (but not much else)

git-svn-id: https://svn.parrot.org/parrot/branches/libjit_framebuilder2@43458 d31e2699-5ff4-0310-a27c-f18f2fbe73fe
  • Loading branch information
plobsing committed Jan 15, 2010
1 parent fc624ba commit 14506db
Show file tree
Hide file tree
Showing 28 changed files with 2,073 additions and 1,847 deletions.
12 changes: 8 additions & 4 deletions MANIFEST
Expand Up @@ -229,9 +229,6 @@ config/auto/env/test_setenv_c.in []
config/auto/env/test_unsetenv_c.in []
config/auto/format.pm []
config/auto/frames.pm []
config/auto/frames/test_exec_cygwin_c.in []
config/auto/frames/test_exec_linux_c.in []
config/auto/frames/test_exec_openbsd_c.in []
config/auto/gc.pm []
config/auto/gc/test_c.in []
config/auto/gcc.pm []
Expand All @@ -253,6 +250,8 @@ config/auto/inline/test2_c.in []
config/auto/isreg.pm []
config/auto/isreg/test_c.in []
config/auto/jit.pm []
config/auto/libjit.pm []
config/auto/libjit/libjit_c.in []
config/auto/memalign.pm []
config/auto/memalign/test2_c.in []
config/auto/memalign/test_c.in []
Expand Down Expand Up @@ -305,6 +304,9 @@ config/gen/core_pmcs.pm []
config/gen/crypto.pm []
config/gen/crypto/digest_pmc.in []
config/gen/crypto/digest_t.in []
config/gen/libjit.pm []
config/gen/libjit/frame_builder_libjit_c.in []
config/gen/libjit/frame_builder_libjit_h.in []
config/gen/makefiles.pm []
config/gen/makefiles/CFLAGS.in []
config/gen/makefiles/data_json.in []
Expand Down Expand Up @@ -1123,6 +1125,7 @@ lib/Parrot/IO/File.pm [devel]lib
lib/Parrot/IO/Path.pm [devel]lib
lib/Parrot/Install.pm [devel]lib
lib/Parrot/Manifest.pm [devel]lib
lib/Parrot/NativeCall.pm [devel]lib
lib/Parrot/Op.pm [devel]lib
lib/Parrot/OpTrans.pm [devel]lib
lib/Parrot/OpTrans/C.pm [devel]lib
Expand Down Expand Up @@ -1326,7 +1329,6 @@ src/events.c []
src/exceptions.c []
src/exit.c []
src/extend.c []
src/frame_builder.c []
src/frame_builder.h []
src/gc/alloc_memory.c []
src/gc/alloc_resources.c []
Expand Down Expand Up @@ -1997,6 +1999,7 @@ t/steps/auto/icu-01.t [test]
t/steps/auto/inline-01.t [test]
t/steps/auto/isreg-01.t [test]
t/steps/auto/jit-01.t [test]
t/steps/auto/libjit-01.t [test]
t/steps/auto/memalign-01.t [test]
t/steps/auto/msvc-01.t [test]
t/steps/auto/neg_0-01.t [test]
Expand All @@ -2021,6 +2024,7 @@ t/steps/gen/config_h-01.t [test]
t/steps/gen/config_pm-01.t [test]
t/steps/gen/core_pmcs-01.t [test]
t/steps/gen/crypto-01.t [test]
t/steps/gen/libjit-01.t [test]
t/steps/gen/makefiles-01.t [test]
t/steps/gen/opengl-01.t [test]
t/steps/gen/parrot_include-01.t [test]
Expand Down
39 changes: 4 additions & 35 deletions config/auto/frames.pm
Expand Up @@ -40,21 +40,13 @@ sub runstep {

sub _call_frames_buildable {
my $conf = shift;

my $osname = $conf->data->get('osname');
my $cpuarch = $conf->data->get('cpuarch');
my $nvsize = $conf->data->get('nvsize');
my $can_build_call_frames;

if (defined $conf->options->get('buildframes')) {
$can_build_call_frames = $conf->options->get('buildframes');
}
else {
# TT #1132
# Temporary disable build frames automatically.
#$can_build_call_frames = ($nvsize == 8 && $cpuarch eq 'i386'
# && $osname ne 'darwin');
$can_build_call_frames = 0;
$can_build_call_frames = $conf->data->get('HAS_LIBJIT');
}
return $can_build_call_frames;
}
Expand All @@ -63,36 +55,13 @@ sub _handle_can_build_call_frames {
my ($self, $conf, $can_build_call_frames) = @_;
if ( $can_build_call_frames ) {
$conf->data->set(
cc_build_call_frames => '-DCAN_BUILD_CALL_FRAMES',
cc_build_call_frames => '-DCAN_BUILD_CALL_FRAMES',
has_exec_protect => 1,
);
# test for executable malloced memory
my $osname = $conf->data->get( 'osname' );
if ( -e "config/auto/frames/test_exec_${osname}_c.in" ) {
$conf->cc_gen("config/auto/frames/test_exec_${osname}_c.in");
eval { $conf->cc_build(); };
if ($@) {
$conf->data->set( has_exec_protect => 0 );
}
else {
my $exec_protect_test = (
$conf->cc_run(0) !~ /ok/ && $conf->cc_run(1) =~ /ok/
);
if ($exec_protect_test) {
$conf->data->set( has_exec_protect => 1 );
}
else {
$conf->data->set( has_exec_protect => 0 );
}
}
$conf->cc_clean();
}
else {
$conf->data->set( has_exec_protect => 0 );
}
$self->set_result( 'yes' );
}
else {
$conf->data->set( cc_build_call_frames => '');
$conf->data->set(cc_build_call_frames => '');
$self->set_result( 'no' );
}
return 1;
Expand Down
76 changes: 0 additions & 76 deletions config/auto/frames/test_exec_cygwin_c.in

This file was deleted.

71 changes: 0 additions & 71 deletions config/auto/frames/test_exec_linux_c.in

This file was deleted.

71 changes: 0 additions & 71 deletions config/auto/frames/test_exec_openbsd_c.in

This file was deleted.

0 comments on commit 14506db

Please sign in to comment.