Skip to content

Comments

Multicore/use addrmap hash table for marshaling#1

Open
shakthimaan wants to merge 33 commits intotrunkfrom
multicore/use-addrmap-hash-table-for-marshaling
Open

Multicore/use addrmap hash table for marshaling#1
shakthimaan wants to merge 33 commits intotrunkfrom
multicore/use-addrmap-hash-table-for-marshaling

Conversation

@shakthimaan
Copy link
Owner

No description provided.

runtime/extern.c Outdated
uintnat sz_32, sz_64;
char * size_header;
char const * ident = Custom_ops_val(v)->identifier;
char * ident = Custom_ops_val(v)->identifier;
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Check use of const from trunk.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 3d07255.

#endif

#ifndef CAML_AVOID_CONFLICTS
#define Assert CAMLassert
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change all usage of Assert to CAMLassert.

Copy link
Owner Author

@shakthimaan shakthimaan Feb 3, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 5f4ec29.

caml_fatal_error(
caml_fatal_error_arg(
"output_value: incorrect fixed sizes specified by %s",
ident);
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use caml_fatal_error.

Copy link
Owner Author

@shakthimaan shakthimaan Feb 3, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in ffc6c50

extern_ptr[0] = code;
store16(extern_ptr + 1, (int) val);
store16(extern_ptr + 1, val);
extern_ptr += 3;
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-add (int) type cast.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in af82c91.

} else
writecode32(CODE_INT32, n);
goto next_item;
}
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-add Is_in_value_area and caml_extern_allow_out_of_heap.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 066b486.

runtime/extern.c Outdated
/* Check if already seen */
if (Color_hd(hd) == Caml_blue) {
uintnat d = obj_counter - (uintnat) Field(v, 0);
if (extern_flags & NO_SHARING) {
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why NO_SHARING? Only else case should always happen.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 09391c5.

runtime/extern.c Outdated
case Abstract_tag:
extern_invalid_argument("output_value: abstract value (Abstract)");
break;
case Closure_tag:
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove Closure_tag.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 2dfe33a.

runtime/extern.c Outdated
sp++;
if (sp >= extern_stack_limit) sp = extern_resize_stack(sp);
sp->v = &Field(v,1);
sp->v = Op_val(v) + 1;
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use &Field(v, 1);

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in db97dab.

v = field0;
continue;
}
}
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Retain the else if.

Copy link
Owner Author

@shakthimaan shakthimaan Feb 2, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is only an indentation fix.

@@ -750,7 +668,30 @@ CAMLprim value caml_output_value_to_bytes(value v, value flags)

CAMLprim value caml_output_value_to_string(value v, value flags)
{
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-use caml_output_value_to_bytes.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 7ef0a4c.

runtime/extern.c Outdated
res += header_len;
for (blk = extern_output_first; blk != NULL; blk = blk->next) {
intnat n = blk->end - blk->data;
int n = blk->end - blk->data;
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Type should be intnat.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in af82c91.

runtime/misc.c Outdated
abort();
}

CAMLexport void caml_fatal_error_arg (const char *fmt, const char *arg)
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can be removed.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in ffc6c50.

shakthimaan pushed a commit that referenced this pull request Sep 22, 2020
This job did actually do two different things:

1. Check that the compiler can be built without the world.opt target

2. Run sanitizers

This commit thus splits the extra-checks job into two separate
ones that are defined as Jenkins pipeline jobs named sanitizers and
step-by-step-build.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant