b->loc->address = adjust_breakpoint_address (b->loc->requested_address);
b->loc->address = adjust_breakpoint_address (b->loc->requested_address, bptype);
set_raw_breakpoint (struct symtab_and_line sal, enum bptype bptype){  struct breakpoint *b, *b1;  b = (struct breakpoint *) xmalloc (sizeof (struct breakpoint));  memset (b, 0, sizeof (*b));  b->loc = allocate_bp_location (b, bptype);  b->loc->requested_address = sal.pc;  b->loc->address = adjust_breakpoint_address (b->loc->requested_address);  if (sal.symtab == NULL)    b->source_file = NULL;  else    b->source_file = savestring (sal.symtab->filename,				 strlen (sal.symtab->filename));  b->loc->section = sal.section;  b->type = bptype;  b->language = current_language->la_language;  b->input_radix = input_radix;  b->thread = -1;  b->line_number = sal.line;  b->enable_state = bp_enabled;  b->next = 0;  b->silent = 0;  b->ignore_count = 0;  b->commands = NULL;  b->frame_id = null_frame_id;  b->dll_pathname = NULL;  b->triggered_dll_pathname = NULL;  b->forked_inferior_pid = 0;  b->exec_pathname = NULL;  b->ops = NULL;  b->pending = 0;  /* Add this breakpoint to the end of the chain     so that a list of breakpoints will come out in order     of increasing numbers.  */  b1 = breakpoint_chain;  if (b1 == 0)    breakpoint_chain = b;  else    {      while (b1->next)	b1 = b1->next;      b1->next = b;    }  check_duplicates (b);  breakpoints_changed ();  return b;}